De alguna manera, hace décadas, se creó una tabla en nuestra base de datos que comienza con a #
. Aparece en Object Explorer en la base de datos de la aplicación, no en tempdb
. Por alguna razón, Azure no importará la base de datos de esta manera.
No podemos soltarlo, renombrarlo o interactuar con él. He intentado Eliminar del Object Explorer, Script Drop , Rename de la GUI y ninguno de ellos ha funcionado.
Estamos en SQL 2008 R2.
drop table [*app*].[dbo]."#OBSOLETE";
Database name '*app*' ignored, referencing object in tempdb.
Msg 3701, Level 11, State 5, Line 1
Cannot drop the table '#OBSOLETE', because it does not exist or you do not
have permission.
exec sp_rename "dbo.#OBSOLETE", "dbo.obsolete"
Msg 15225, Level 11, State 1, Procedure sp_rename, Line 338
No item by the name of 'dbo.#OBSOLETE' could be found in the current database '*app*', given that @itemtype was input as '(null)'.
¿Cómo matamos este objeto para que podamos migrarlo a Azure?
SELECT [name], CONVERT(VARBINARY(128), [name]) FROM sys.tables WHERE [name] = N'#OBSOLETE';
. Gracias.
object_id
de esa tabla. 2) Reinicie la instancia en modo de usuario único. 3) conectarse a través de una conexión de administrador dedicada. 4) En ese DB, intente algo como UPDATE sys.objects$ SET [name] =N'obsolete' WHERE [object_id] = {ye_olde_object_id}; {enter} GO {enter}
. Vale la pena