Hola, chicos,
¡Buen día!
En esta publicación rápida, demostraré cómo identificar tablas que tienen columnas IDENTIDAD en SQL Server. A menudo necesitamos identificar qué tablas son, cuál es el valor actual de la identidad y cuál es el valor del incremento (semilla) de la tabla y, por supuesto, no lo vamos a mirar tabla por tabla.
Para ello, podemos identificar rápidamente esta información con la siguiente consulta:
SELECT
IDENT_SEED(TABLE_NAME) AS Seed,
IDENT_INCR(TABLE_NAME) AS Increment,
IDENT_CURRENT(TABLE_NAME) AS Current_Identity,
TABLE_NAME
FROM
INFORMATION_SCHEMA.TABLES
WHERE
OBJECTPROPERTY(OBJECT_ID(TABLE_NAME), 'TableHasIdentity') = 1
AND TABLE_TYPE = 'BASE TABLE'
ORDER BY
Current_Identity DESC
Ejemplo:

Identificando las columnas que tienen la propiedad Identidad:
SELECT
TABLE_CATALOG,
TABLE_SCHEMA,
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
IS_NULLABLE,
COLUMN_DEFAULT,
ORDINAL_POSITION,
NUMERIC_PRECISION,
NUMERIC_SCALE
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'IsIdentity') = 1
ORDER BY
TABLE_NAME
¡Hasta la próxima!

Comentários (0)
Carregando comentários…