做一个自动生成脚本的程序,需要访问数据库元数据表,不知道如何去判断某一列是否为主键。谁知道麻烦告知一下。
有兴趣研究下的这里提供一点参考,下面的视图可以获得你数据库中的表及字段名称和类型,以及类型长度(Sql Server 2005):
Create View vMetaData
As
select dbo.syscolumns.[name] as [column],
dbo.syscolumns.length as length,
dbo.systypes.[name] as [type],
dbo.sysobjects.[name] as [table]
from dbo.syscolumns
inner join dbo.systypes
on dbo.syscolumns.xtype = dbo.systypes.xtype
inner join dbo.sysobjects
on dbo.syscolumns.id = dbo.sysobjects.id
where dbo.sysobjects.type = 'U'