Olá pessoal,
Bom dia!

Neste post rápido vou demonstrar como identificar as tabelas que possuem colunas IDENTITY no SQL Server. Muitas vezes, precisamos identificar quais tabelas são essas, qual o valor atual do identity e qual o valor do incremento (seed) da tabela e é claro que não vamos olhar tabela por tabela.

Para isso, podemos rapidamente identificar essas informações com a query abaixo:

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

Exemplo:

SQL Server - Tabelas com colunas identity
SQL Server - Tabelas com colunas identity

Identificando as colunas que possuem a propriedade Identity:

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 

Exemplo:

Até a próxima!

sql, sql server, tabelas com identity, colunas identity, How to get current identity number of specific table, como recuperar o valor atual do identity, último valor do identity