Pregunta

Tengo un script que tiene un comando DROP TABLE como este:

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

este comando se ejecuta correctamente. pero en el script, el comando drop no se ejecuta y propone este error

Ya existe un objeto llamado 'msdb.dbo.lobloblob' en la base de datos

¿Fue útil?

Solución

Prueba

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

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

en su lugar.Supongo que está ejecutando este script desde el contexto de una base de datos diferente a msdb, por lo que no estará en sys.objects

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top