Antes de crear una TABLA, siempre es recomendable verificar si la tabla existe en la base de datos de SQL Server o no.
Alternativa 1:
usar OBJECT_ID y la declaración IF ELSE para verificar si una tabla existe o no.
Consulta :
USE [DB_NAME] GO IF OBJECT_ID('table_name', 'U') IS NOT NULL BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Alternativa 2:
usar el operador INFORMATION_SCHEMA.TABLES y SQL EXISTS para verificar si una tabla existe o no.
Consulta :
USE [DB_NAME] GO IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = N'table_name') BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Alternativa 3:
usar sys.Objects para verificar si existe una tabla en SQL Server o no.
Consulta :
USE [DB_NAME] GO IF EXISTS(SELECT 1 FROM sys.Objects WHERE Object_id = OBJECT_ID(N'table_name') AND Type = N'U') BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Producción :
Table does not exists.
Alternativa 4:
usar sys.Tables para verificar si existe una tabla o no.
Consulta :
USE [DB_NAME] GO IF EXISTS(SELECT 1 FROM sys.Tables WHERE Name = N'table_name') BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Ejemplo:
supongamos que tenemos el nombre de la base de datos » SQL_DBA » y necesitamos crear una nueva tabla » geek_demo » –
Entrada-1:
USE [SQL_DBA] GO IF OBJECT_ID('geek_demo', 'U') IS NOT NULL BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Salida-1:
Table does not exists.
Vamos a crear la tabla.
Create table geek_demo (id int, name varchar(200));
Ahora, verifiquemos si la tabla está creada o no:
Entrada-2:
USE [DB_NAME] GO IF EXISTS(SELECT 1 FROM sys.Objects WHERE Object_id = OBJECT_ID(N'table_name') AND Type = N'U') BEGIN PRINT 'Table exists.' END ELSE BEGIN PRINT 'Table does not exist.' END
Salida-2:
Table exists.
Publicación traducida automáticamente
Artículo escrito por khushboogoyal499 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA