--獲得表common_channel欄位及說明
select a.name,b.value from syscolumns a,sysproperties b where a.id=b.id and a.id=object_id('common_channel') and a.colorder=b.smallid;
--採用sql語句生成資料字典
select 表名=case when a.colorder=1 then d.name else '' end,
--欄位序號=a.colorder,
欄位名=a.name,
字段說明=isnull(g.[value],''),
--標識=case when columnproperty( a.id,a.name,'isidentity')=1 then '√'else '' end,
主鍵=case when exists(select 1 from sysobjects where xtype='pk' and name
in ( select name from sysindexes where indid
in( select indid from sysindexkeys where id = a.id and colid=a.colid )))
then '√' else '' end,
字段型別=b.name,
--占用位元組數=a.length,
長度=columnproperty(a.id,a.name,'precision'),
小數字數=isnull(columnproperty(a.id,a.name,'scale'),0),
允許空=case when a.isnullable=1 then '是'else '否' end,
預設值=isnull(e.text,'無')
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
--mysql採用sql語句生成資料字典
select column_name,column_comment, column_type, is_nullable, column_default from information_schema.columns where table_name = 'article_sort'
--sqlserver2005生成語句
select 表名 = case when a.colorder=1 then d.name else '' end,
表說明 = case when a.colorder=1 then isnull(f.value,'') else '' end,
-- 字段序號 = a.colorder,
欄位名 = a.name,
標識 = case when columnproperty( a.id,a.name,'isidentity')=1 then '√'else '' end,
主鍵 = case when exists(select 1 from sysobjects where xtype='pk' and parent_obj=a.id and name in (
select name from sysindexes where indid in( select indid from sysindexkeys where id = a.id and colid=a.colid))) then '√' else '' end,
型別 = b.name,
占用位元組數 = a.length,
長度 = columnproperty(a.id,a.name,'precision'),
小數字數 = isnull(columnproperty(a.id,a.name,'scale'),0),
允許空 = case when a.isnullable=1 then '√'else '' end,
預設值 = isnull(e.text,''),
字段說明 = isnull(g.[value],'')
from
syscolumns a
left join
systypes b
on a.xusertype=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
sys.extended_properties g
on a.id=g.major_id and a.colid=g.minor_id
left join
sys.extended_properties f
on d.id=f.major_id and f.minor_id=0
-- where d.name='c_party_spreader' --如果只查詢指定表,加上此條件
order by
d.name,a.id,a.colorder
SqlServer生成資料字典語句
select 表名 case when a.colorder 1 then d.name else end,表說明 case when a.colorder 1 then isnull f.value,else end,字段序號 a.colorder,欄位名 a.name,標識 case when ...
Oracle自動生成資料字典的SQL語句
讀取oracle表字段名字,型別 含長度 注釋等資訊的sql語句 select col.column name,com.comments,col.data type,col.data length from sys.all tab columns col,sys.all col comments c...
Oracle自動生成資料字典的SQL語句
讀取oracle表字段名字,型別 含長度 注釋等資訊的sql語句 select col.column name,com.comments,col.data type,col.data length from sys.all tab columns col,sys.all col comments c...