In qualche modo, decenni fa, una tabella è stata creata nel nostro database che inizia con a #
. Viene visualizzato in Esplora oggetti nel database dell'app, non in tempdb
. Per qualche motivo, Azure non importerà il database in questo modo.
Non possiamo rilasciarlo, rinominarlo o interagire con esso. Ho provato Elimina da Esplora oggetti, Script Drop , Rinomina dalla GUI e nessuno di loro ha funzionato.
Siamo su 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)'.
Come uccidere questo oggetto in modo da poterlo migrare in Azure?
SELECT [name], CONVERT(VARBINARY(128), [name]) FROM sys.tables WHERE [name] = N'#OBSOLETE';
. Grazie.
object_id
di quella tabella. 2) Riavviare l'istanza in modalità utente singolo. 3) connettersi tramite Dedicated Admin Connection. 4) In quel DB, prova qualcosa di simile UPDATE sys.objects$ SET [name] =N'obsolete' WHERE [object_id] = {ye_olde_object_id}; {enter} GO {enter}
. Vale la pena