Я хочу сделать это в коде, а не с ALT + F1.
Вы также можете сделать это следующим образом:
select columnproperty(object_id('mytable'),'mycolumn','IsIdentity')
Возвращает 1, если это тождество, 0, если нет.
sp_help tablename
В выводе ищите что-то вроде этого:
Identity Seed Increment Not For Replication ----------- ------- ------------ ---------------------- userid 15500 1 0
Настройте предложение WHERE в соответствии с:
WHERE
select a.name as TableName, b.name as IdentityColumn from sysobjects a inner join syscolumns b on a.id = b.id where columnproperty(a.id, b.name, 'isIdentity') = 1 and objectproperty(a.id, 'isTable') = 1
Удостоверение - это значение, которое используется для самой первой строки, загруженной в таблицу.
Существует статья в Microsoft, которая может предоставить хорошие знания об идентичности:
https://docs.microsoft.com/en-us/sql/t-sql/statements/create-table-transact-sql-identity-property?view=sql-server-2017
Теперь есть несколько способов определить, какой столбец является столбцом идентификаторов в таблице:
Как дополнение к ответу @ Blogbeard
Если вам нравится чистый запрос, а не встроенные функции
select col_name(sys.all_objects.object_id, column_id) as id from sys.identity_columns join sys.all_objects on sys.identity_columns.object_id = sys.all_objects.object_id where sys.all_objects.name = 'system_files'