--
取得欄位定義
select SysObjects.name TableName
,syscolumns.colorder
,syscolumns.name ColName
, Case systypes.name
when ' int ' Then ' int '
when ' tinyint ' Then ' tinyint '
when ' char ' Then ' C '
when ' varchar ' Then ' VC '
when ' numeric ' Then ' N '
End coltype
, Case systypes.name
when ' int ' Then syscolumns.xprec
when ' tinyint ' Then syscolumns.xprec
when ' char ' Then syscolumns.length
when ' varchar ' Then syscolumns.length
when ' numeric ' Then syscolumns.xprec
End length
, Case systypes.name
when ' numeric ' Then syscolumns.xscale
else 0
End xscale
,sysproperties.value
From SysObjects SysObjects
Join syscolumns syscolumns
On SysObjects.id = syscolumns.id
Left Outer Join sysproperties sysproperties
On syscolumns.id = sysproperties.id
And syscolumns.colorder = sysproperties.smallid
Join systypes systypes
On syscolumns.xtype = systypes.xtype
Where SysObjects.status > 0
And SysObjects.xtype = ' U '
And Not (SysObjects.name like ' %Log ' )
order by SysObjects.Name
,syscolumns.colorder
select SysObjects.name TableName
,syscolumns.colorder
,syscolumns.name ColName
, Case systypes.name
when ' int ' Then ' int '
when ' tinyint ' Then ' tinyint '
when ' char ' Then ' C '
when ' varchar ' Then ' VC '
when ' numeric ' Then ' N '
End coltype
, Case systypes.name
when ' int ' Then syscolumns.xprec
when ' tinyint ' Then syscolumns.xprec
when ' char ' Then syscolumns.length
when ' varchar ' Then syscolumns.length
when ' numeric ' Then syscolumns.xprec
End length
, Case systypes.name
when ' numeric ' Then syscolumns.xscale
else 0
End xscale
,sysproperties.value
From SysObjects SysObjects
Join syscolumns syscolumns
On SysObjects.id = syscolumns.id
Left Outer Join sysproperties sysproperties
On syscolumns.id = sysproperties.id
And syscolumns.colorder = sysproperties.smallid
Join systypes systypes
On syscolumns.xtype = systypes.xtype
Where SysObjects.status > 0
And SysObjects.xtype = ' U '
And Not (SysObjects.name like ' %Log ' )
order by SysObjects.Name
,syscolumns.colorder