我在编程中需要取得数据表的所有列信息,现在已知
select * from sysobjects where xtype='pk' and parent_obj = object_id(N'表名') 可以取得主键信息
但是主键信息并不是在这里保存的,我想知道的就是主键信息是存在哪儿的,存在那个表里面
select * from sysobjects where xtype='pk' and parent_obj = object_id(N'表名') 可以取得主键信息
但是主键信息并不是在这里保存的,我想知道的就是主键信息是存在哪儿的,存在那个表里面
解决方案 »
- 望高手帮忙?如果能解决该问题本人愿拿1000RMB酬谢,决不食言!!!!!!!!
- sql server 如何统计并导出与字段相同的文件名的文件或路径
- 求一合并查询语句
- SELECT TOP 1000 * FROM table;SELECT @@ROWCOUNT 如何用户SqlDataAdapter.fill填充表,并取得@@ROWCOUNT 结果?
- 触发器---禁止删除某行
- 用新的查询结果覆盖原表格,如何解决?
- 这段代码什么意思呢?
- sql server 竟不能实现access可以做到的多表同时更新?
- 谁有汽车配件基本信息的库记录(万分感激)>>>>>!_!
- 有关库存问题的SQL语句
- 怎样打开sql server2000的1433端口
- mssql日志恢复问题
(case when a.colorder=1 then d.name else '' end)表名,
a.colorder 列序号,
a.name 列名,
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) 标识,
(case when (SELECT count(*) FROM sysobjects
WHERE (name in
(SELECT name
FROM sysindexes
WHERE (id = a.id) AND (indid in
(SELECT indid
FROM sysindexkeys
WHERE (id = a.id) AND (colid in
(SELECT colid
FROM syscolumns
WHERE (id = a.id) AND (name = a.name))))))) AND
(xtype = 'PK'))>0 then '√' else '' end) 主键,
b.name 类型,
a.length 占用位元组数,
COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,
isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,
(case when a.isnullable=1 then '√'else '' end) 允许空,
isnull(e.text,'') 默认值,
isnull(g.[value],'') AS 说明
FROM syscolumns a left join systypes b
on a.xtype=b.xusertype
inner join sysobjects d
on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'
left join syscomments e
on a.cdefault=e.id
left join sysproperties g
on a.id=g.id AND a.colid = g.smallid
order by a.id,a.colorder
如果只要获取一个表的主键信息及该主键对应的列就可以了,SQL怎么写?