Не.
Ако изпълнявате това от база данни, различна от tempdb
получавате
Което не е изненадващо, тъй като всички страници с данни и т.н. са в tempdb
файлове с данни, така че да не можете да преименувате това внезапно да стане постоянна таблица в друга база данни.
Ако изпълнявате това от tempdb
получавате
Ако направите EXEC sp_helptext sp_rename
и вижте дефиницията, съответният код, забраняващ това, е
--------------------------------------------------------------------------
-------------------- PHASE 32: Temporay Table Isssue -------------------
--------------------------------------------------------------------------
-- Disallow renaming object to or from a temp name (starts with #)
if (@objtype = 'object' AND
(substring(@newname,1,1) = N'#' OR
substring(object_name(@objid),1,1) = N'#'))
begin
COMMIT TRANSACTION
raiserror(15600,-1,-1, 'sys.sp_rename')
return 1
end
Защо първо не създадете постоянна таблица, след което преименувате?