DROP [OBJECT] IF EXISTS
En SQL 2016 es más practico ahora eliminar objetos, que como se solía realizar, anteriormente para borrar por ejemplo una tabla usábamos:
Use northwind go IF OBJECT_ID(‘dbo.Customers’, ‘U’) IS NOT NULL DROP TABLE dbo.Customers;
IF EXISTS (SELECT * FROM sys.triggers WHERE name = ‘trcustomerInsert’) DROP TRIGGER trcustomerInsert
|
Ahora podemos reducir líneas de código de la siguiente manera.
DROP TABLE IF EXISTS dbo.Customers DROP TRIGGER IF EXISTS trcustomerInsert
|
Si no existe el objeto, DIE no va a fallar y la ejecución continuará. Los objetos que se pueden destruir:
· AGGREGATE
· PROCEDURE · TABLE · ASSEMBLY · ROLE · TRIGGER · VIEW · RULE · TYPE |
· DATABASE
· SCHEMA · USER · DEFAULT · SECURITY POLICY · VIEW · FUNCTION · SEQUENCE · INDEX · SYNONYM
|
Fuente: https://blogs.msdn.microsoft.com/sqlserverstorageengine/2015/11/03/drop-if-exists-new-thing-in-sql-server-2016/