<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

    最近做一個項目,客戶希望可以自己選擇想要查看的列表,這樣就不好辦了,選擇列表的名字他們也想自定義,沒辦法這就需要查看數據表中字段,中文說明,默認標志了。在網上查了部分資料但是發現粘上去的代碼都存在問題,無奈只好自己修改了一下,代碼如下:

    如下代碼能正常運行,都是網上查找資料最后拼湊總結出來的。條件就自己加吧。網上好像也有不少類型的東西,這里留著以備不時只需!

    SELECT (CASE
             
    WHEN a.colorder = 1 THEN
              d.NAME
             
    ELSE
              
    ''
           
    END) N'表名',
           a.colorder N
    '字段序號',
           a.NAME N
    '字段名',
           (
    CASE
             
    WHEN columnproperty(a.id, a.NAME, 'IsIdentity'= 1 THEN
              
    ''
             
    ELSE
              
    ''
           
    END) N'標識',
           (
    CASE
             
    WHEN (SELECT COUNT(*)
                     
    FROM sysobjects
                    
    WHERE (NAME IN
                          (
    SELECT NAME
                              
    FROM sysindexes
                             
    WHERE (id = a.id)
                               
    AND (indid IN
                                   (
    SELECT indid
                                       
    FROM sysindexkeys
                                      
    WHERE (id = a.id)
                                        
    AND (colid IN
                                            (
    SELECT colid
                                                
    FROM syscolumns
                                               
    WHERE (id = a.id)
                                                 
    AND (NAME = a.NAME)))))))
                      
    AND (xtype = 'PK')) > 0 THEN
              
    ''
             
    ELSE
              
    ''
           
    END) N'主鍵',
           b.NAME N
    '類型',
           a.length N
    '占用字節數',
           
    columnproperty(a.id, a.NAME, 'PRECISION'AS N'長度',
           
    isnull(columnproperty(a.id, a.NAME, 'Scale'), 0AS N'小數位數',
           (
    CASE
             
    WHEN a.isnullable = 1 THEN
              
    ''
             
    ELSE
              
    ''
           
    END) N'允許空',
           
    isnull(e.text'') N'默認值',
           
    isnull(g. VALUE, ''AS N'字段說明'
    --into ##tx
      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
     
    ORDER BY object_name(a.id), a.colorder

    sysproperties表的詳解: 

    1、表名:sqlserver的注釋表,每個數據庫都有,包括表和字段的注釋,表或者列的注釋都會存儲,沒有注釋不存儲。 
    2、字段: 
      id:表的ID或者是列的ID 
      smallid:列的順序,排序用 
      type:3 表,4字段,可能還有約束什么的,還沒有測試出 
      name:統一的MS_Description 
      value:描述

     

    如需修改(轉載部分)

    如果需要更新 此表的 內容 需要 開啟 [允許對系統目錄直接進行修改] ,否則 改不了 系統表

    如果 不開啟 此 功能  ,那么也可以 使用 存儲過程[sp_addextendedproperty] 來 添加\更新\刪除 表和字段的描述 用法如下


     

     --創建表
    Create Table 表(a1 varchar(10),a2 char(2))

    --為表 添加 描述信息 : 第二個參數為 [描述] 第六個參數為 [表名]
    EXECUTE sp_addextendedproperty N'MS_Description', '人員信息表', N'user', N'dbo', N'table', N'表', NULL, NULL

    --為表 更新 描述信息 : 第二個參數為 [描述]  第六個參數為 [表名]
    EXECUTE sp_updateextendedproperty 'MS_Description',N'adsfasfdas', N'user', N'dbo', N'table', N'表', NULL, NULL

    --為表 刪除 描述信息 : 第五個參數為 [表名]
    EXEC sp_dropextendedproperty 'MS_Description',N'user', N'dbo', N'table', N'表', NULL, NULL

     

    --字段的 添加 更新 刪除 方法 
    --為 字段a1 添加 描述信息: 第二個參數為 [描述] 第六個參數為 [表名] 第八個參數為 [字段名稱] 
    EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'table', N'表', N'column', N'a1'

    --更新 字段 a1 的描述屬性:第二個參數為 [描述] 第六個參數為 [表名] 第八個參數為 [字段名稱] 
    EXEC sp_updateextendedproperty 'MS_Description','字段1dd','user',dbo,'table','表','column',N'a1'

    --刪除 字段 a1 的描述屬性:第五個參數為 [表名] 第七個參數為 [字段名稱] 
    EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column','a1'

    --刪除測試
    Drop Table 表

    posted on 2013-03-31 04:59 rogerfan 閱讀(859) 評論(0)  編輯  收藏 所屬分類: 【數據庫】
    主站蜘蛛池模板: 亚洲国产精品人久久电影| 精品国产麻豆免费人成网站| 国产在线国偷精品产拍免费| 国产精品青草视频免费播放| 亚洲国产综合精品中文字幕| 国产成人免费网站| 亚洲电影免费在线观看| 国产亚洲人成在线影院| 亚洲国产美女精品久久久久| 国产亚洲AV夜间福利香蕉149 | 国产一区二区免费| 美女18一级毛片免费看| 亚洲乱码日产精品一二三| 免费观看激色视频网站bd| 久草免费福利在线| 亚洲欧洲日产国码av系列天堂 | 日韩亚洲人成在线| 亚洲欧洲日产专区| 亚洲第一福利网站| 成年女人毛片免费播放人| 1区2区3区产品乱码免费| 久久国产免费一区| 永久免费av无码网站yy| 亚洲一区精彩视频| 国产成人免费高清在线观看| 国产福利在线观看免费第一福利| 久久亚洲AV成人无码国产电影 | 国产小视频在线免费| 四虎影视免费在线| 日韩毛片免费在线观看| 最近中文字幕mv免费高清电影| a毛片基地免费全部视频| 4455永久在线观免费看| 91精品国产免费久久久久久青草| 最近的中文字幕大全免费8| 91视频免费网址| 精品久久8x国产免费观看| 久草在视频免费福利| 在线a级毛片免费视频| 天天干在线免费视频| 国产精品高清全国免费观看|