查詢並匯出表結構為Excel

2022-09-14 04:42:14 字數 1273 閱讀 6596

應公司要求將資料庫結構用**形式來展示給客戶,最開始我手工弄了兩張表效率實在太低了,於是就想偷懶了,就去網上找了一段兒sql查詢語句效率提高了70%一執行就出來了,匯出查詢結果剩下的就只需要調整一下excel

select

表名 = case when a.colorder=1 then d.name else

''end,

表說明 = case when a.colorder=1 then isnull(f.value,'') else

''end,

字段中文名稱 = isnull(g.[value],''

), 字段英文名稱 =a.name,

型別 =b.name,

長度 = columnproperty(a.id,a.name,'

precision'),

--主鍵 = 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 '1'

else'0

'end,

允許空=case when a.isnullable=1 then '1'

else'0

'end

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

order by a.id,a.colorder,d.name

所以該偷懶還是要偷懶,記錄一下以後有機會給它寫成乙個工具。至於處於**我不小心關了頁面(對不起了!博主,無意冒犯)

PG匯出表結構為Excel

如下圖sql所示 select a.attnum as 序號,這裡是表描述,原本新建資料庫的時候沒有新增表描述,查詢出來會為空,注釋掉就好,有表描述的放開這條注釋 a.attname as 欄位名稱,concat ws t.typname,substring format type a.atttyp...

機房收費系統 查詢並匯出Excel表

15 30 時間過的很快,但是自己的進度確實有夠慢的,很多同學已經開始進入到軟工了,自己還為機房收費系統苦惱著。雖然進度很慢,但是每每解決乙個問題都很興奮。開始都說,只要參考學生資訊管理系統敲就行了,但是壓根就沒有思路,但是現在,只要解決乙個,下乙個就會有些思路,久而久之,突然感覺有很多相似的窗體,...

MySQL表結構匯出Excel

在寫設計文件時,需要把mysql中的表結構按要求匯出。mysql客戶端預設的字段不滿足需求時,可通過mysql的information schema.columns表,查詢並按需求匯出字段。information schema.columns表記錄了所有庫中所有表的字段資訊,如下 字段具體意義如下 ...