Мой сценарий не может выполнить команду удаления таблицы SQL Server 2008 - PullRequest
0 голосов
/ 15 января 2012

У меня есть скрипт, который имеет команду DROP TABLE, например:

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
....

эта команда выполнена правильно. но в сценарии команда сброса не выполняется и предлагает эту ошибку

В базе данных уже есть объект с именем msdb.dbo.lobloblob

1 Ответ

4 голосов
/ 15 января 2012

Попробуйте

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

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

вместо этого. Я предполагаю, что вы запускаете этот скрипт из контекста базы данных, отличной от msdb, поэтому он не будет в sys.objects

...