Como saber se uma tabela contém uma coluna IDENTITY?
[sourcecode language=”sql”]
SELECT OBJECTPROPERTY(OBJECT_ID(N’dbo.Company’),
‘TableHasIdentity’)
[/sourcecode]
Caso o select acima retorne o valor igual a 1 significa que a tabela tem uma coluna IDENTITY enquanto um valor igual a 0 significa que a tabela não tem uma coluna IDENTITY. Um valor igual a NULL significa tanto a tabela não existe ou o nome do objeto passado não é uma tabela.
Como saber qual coluna dentro de uma tabela é a coluna IDENTITY?
[sourcecode language=”sql”]
SELECT B.Name AS IdentityColumn
FROM sys.tables A
INNER JOIN sys.columns B ON A.Object_ID = B.Object_ID
AND A.Name = ‘Company’
AND COLUMNPROPERTY(A.Object_ID, B.Name, ‘IsIdentity’) = 1
[/sourcecode]