MS SQL SERVER导出表结构到Excel
生活随笔
收集整理的這篇文章主要介紹了
MS SQL SERVER导出表结构到Excel
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天準(zhǔn)備整理下手里面幾個(gè)數(shù)據(jù)庫(kù),形成一個(gè)表結(jié)構(gòu)文檔,方便以后維護(hù)使用。
網(wǎng)上找到一個(gè)腳本還不錯(cuò),小小的修改就滿足了我的要求,執(zhí)行完SQL腳本。
在結(jié)果就能看到數(shù)據(jù)庫(kù)所有表的結(jié)構(gòu),這個(gè)時(shí)候只要全選,然后右擊出來(lái)屬性框,選擇將結(jié)果另存為,這個(gè)時(shí)候您只要選擇導(dǎo)出CSV,然后新建一個(gè)Excel表格,在菜單欄選擇數(shù)據(jù),再選擇自文本,后面的大家可以自己的需求自行處理了。
SQL Server腳本:
SELECT表名 = Case When A.colorder=1 Then D.name Else '' End,表說(shuō)明 = Case When A.colorder=1 Then isnull(F.value,'') Else '' End,字段序號(hào) = A.colorder,字段名 = A.name,字段說(shuō)明 = isnull(G.[value],''),標(biāo)識(shí) = 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,占用字節(jié)數(shù) = A.Length,長(zhǎng)度 = COLUMNPROPERTY(A.id,A.name,'PRECISION'),小數(shù)位數(shù) = isnull(COLUMNPROPERTY(A.id,A.name,'Scale'),0),允許空 = Case When A.isnullable=1 Then '√'Else '' End,默認(rèn)值 = isnull(E.Text,'')FROMsyscolumns ALeft Joinsystypes BOnA.xusertype=B.xusertypeInner Joinsysobjects DOnA.id=D.id and D.xtype='U' and D.name<>'dtproperties'Left Joinsyscomments EonA.cdefault=E.idLeft Joinsys.extended_properties GonA.id=G.major_id and A.colid=G.minor_idLeft Joinsys.extended_properties FOnD.id=F.major_id and F.minor_id=0--where d.name='OrderInfo' --如果只查詢指定表,加上此條件Order ByA.id,A.colorder注:腳本來(lái)自網(wǎng)絡(luò),小做修改。
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/LeeYongze/archive/2012/07/19/2599338.html
總結(jié)
以上是生活随笔為你收集整理的MS SQL SERVER导出表结构到Excel的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。