2010-09-20 199 views
42

有誰知道如何通過運行腳本向SQL Server列添加描述?我知道您可以在使用SQL Server Management Studio創建列時添加說明。添加列描述

我該如何編寫腳本,以便我的SQL腳本創建列時,還添加了列的說明?

+8

嗯,這是一個傳統的數據庫,列名對5到6年前寫這些列的人來說是描述性的,但它們對我來說並沒有什麼意義。有很多業務規則與列一起出現,因此只需對該列存在的原因進行簡單描述就可以了。我想我們評論我們的代碼爲什麼我們不應該評論數據庫? – EJC 2010-09-20 18:18:01

+0

Gotcha。瞭解。 – 2010-09-20 18:19:36

回答

47

我想說你可能會想用sp_addextendedproperty存儲過程來做到這一點。

微軟上有一些很好的文檔,但是你也可以看看這個鏈接:

http://www.eggheadcafe.com/software/aspnet/32895758/how-to-set-description-property-with-alter-table-add-column.aspx

試試這個:

EXEC sp_addextendedproperty 
    @name = N'MS_Description', @value = 'Hey, here is my description!', 
    @level0type = N'Schema', @level0name = 'yourschema', 
    @level1type = N'Table', @level1name = 'YourTable', 
    @level2type = N'Column', @level2name = 'yourColumn'; 
GO 
+1

當我談到SQL時,我有點白癡,只要我需要它就可以學到任何我需要的東西,所以當我問這個荒謬的問題時請原諒我。我如何弄清楚「yourschema」是什麼? – EJC 2010-09-20 18:22:41

+2

@EJC,它很可能是「dbo」 – 2010-09-20 18:25:30

+2

它可能是'dbo',這是創建表時的默認值。通常你的表名將如下所示:「{something} .tableName」。 {soemthing}是模式。 – 2010-09-20 18:25:52

6
EXEC sys.sp_addextendedproperty @name = N'MS_Description', 
@value = N'extended description', 
@level0type = N'SCHEMA', 
@level0name = N'dbo', 
@level1type = N'TABLE', 
@level1name = N'Table_1', 
@level2type = N'COLUMN', 
@level2name = N'asdf' 

創建表腳本[DBO]。 [Table_1]

18

這對我有用。相關的論點用小箭頭表示。

EXEC sys.sp_addextendedproperty 
    @name=N'MS_Description' 
,@value=N'Here is my description!' --<<<< 
,@level0type=N'SCHEMA' 
,@level0name=N'dbo' 
,@level1type=N'TABLE' 
,@level1name=N'TABLE_NAME' --<<<< 
,@level2type=N'COLUMN' 
,@level2name=N'FIELD_NAME' --<<<< 
+0

此答案使用正確的'名稱'值(MS_Description)使描述出現在表設計器中窗口。這並不是完全必要的,但它是方便的,並且是吸引人們關注列上擴展屬性存在的好方法。 – AperioOculus 2015-05-01 14:18:32

0

在MS SQL Server Management Studio中10.0.55,最簡單的方法是:

  • 顯示在對象資源管理器窗口表中的列
  • 右鍵點擊感興趣的列並點擊「修改」選項
  • 查看「列屬性」窗口(在我的GUI的右下角)\
  • 查看「表設計器」子部分
  • 修改值「說明」行
  • 單擊列修改窗口右上角的「X」 /標籤
  • 回答「Y」時,它說,將更改應用於

如果然後在對象資源管理器窗口中右鍵單擊您的表並單擊屬性,然後單擊「擴展屬性」,您應該看到您的評論。

請注意,如果您爲該表執行「腳本表另存爲」命令,則上面的列「描述」仍然不會顯示爲該列的註釋。相反,它會在創建表後顯示額外的sp_addextendedproperty調用。平庸。