SQLServer資料表字典生成語句(直接執行)

2022-08-21 21:51:10 字數 1870 閱讀 1374

select表名=

case

when a.colorder=

1then d.name else

''end

,

表說明=case

when a.colorder=

1then

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

1from 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=

1then'√

'else

''end

,

預設值=isnull(e.text,''

),

字段說明

=isnull(g.[

value

],''

)

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 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='要查詢的表' --如果只查詢指定表,加上此條件

order

by a.id,a.colorder

sql資料表字段操作

一 修改字段預設值 alter table 表名 drop constraint 約束名字 說明 刪除表的字段的原有約束 alter table 表名 add constraint 約束名字 default 預設值 for 欄位名稱 說明 新增乙個表的字段的約束並指定預設值 二 修改欄位名 alte...

sql Server 2012 生成資料字典

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 ...

TP5 生成資料表字段快取和路由快取

版本要求v5.0.1以上 通過生成資料表字段資訊快取,提公升資料庫查詢的效能,避免多餘的查詢。多餘的查詢語句可以通過tp5自帶的日誌找到,多餘的語句為 每次有查詢語句時,tp5框架都會執行show columns語句,動態查詢資料庫字段,這時候就需要生成字段資訊快取,減少效能消耗。解決方法很簡單 在...