我想在代码中执行此操作,而不是使用 ALT+F1。
Bialecki
问问题
31801 次
5 回答
80
你也可以这样做:
select columnproperty(object_id('mytable'),'mycolumn','IsIdentity')
如果是身份则返回 1,否则返回 0。
于 2008-10-09T20:16:59.117 回答
23
sp_help tablename
在输出中寻找这样的东西:
Identity Seed Increment Not For Replication
----------- ------- ------------ ----------------------
userid 15500 1 0
于 2008-10-09T20:05:05.880 回答
5
调整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
于 2008-10-09T20:15:46.687 回答
1
作为@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'
于 2016-07-26T13:51:27.537 回答
0
标识是用于加载到表中的第一行的值。
有一篇微软文章可以提供有关身份的良好知识:
现在,有几种方法可以识别表中的哪一列是标识列:
- 我们可以使用sql查询:select columnproperty(object_id('mytable'),'mycolumn','IsIdentity')
- sp_help表名
于 2018-11-03T20:15:05.367 回答