1. 程式人生 > 實用技巧 >SQL server 為表和欄位新增表描述和欄位描述

SQL server 為表和欄位新增表描述和欄位描述

檢視當前資料庫中已存在描述的表與欄位:

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

在查詢分析器中執行上面的SQL,結果可以直接匯出execl檔案

新增表說明:

EXECUTE sp_addextendedproperty N'MS_Description','表說明',N'user',N'dbo',N'table',N'表名',NULL,NULL

刪除表說明:

EXEC sp_dropextendedproperty N'MS_Description','user','dbo','table', '表名', NULL,NULL

新增欄位說明:

EXECUTE sp_addextendedproperty N'MS_Description','欄位說明內容',N'user',N'dbo',N'table',N'表名',N'column',N'欄位名'

刪除欄位說明:

EXEC sp_dropextendedproperty N'MS_Description', 'user','dbo', 'table', '表名', 'column','欄位名'

出處:https://blog.csdn.net/zhangyongze_z/article/details/84789821