Domanda

Ho uno script che ha un comando DROP TABLE come questo:

IF EXISTS ( SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('msdb.dbo.lobloblob') AND type in (N'U'))
DROP TABLE msdb.dbo.lobloblob
CREATE TABLE msdb.dbo.lobloblob
....

questo comando viene eseguito correttamente. ma nello script il comando drop non viene eseguito e propone questo errore

Esiste già un oggetto denominato "msdb.dbo.lobloblob" nel database

È stato utile?

Soluzione

Prova

IF OBJECT_ID('msdb.dbo.lobloblob', 'U') IS NOT NULL
    DROP TABLE msdb.dbo.lobloblob;

CREATE TABLE msdb.dbo.lobloblob (...);

invece.Presumo che tu stia eseguendo questo script dal contesto di un database diverso da msdb, quindi non sarà in sys.objects

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top