SQL SERVER中如何用SQL語句給表的欄位加註釋–sp_addextendedpropert

來源:互聯網
上載者:User
SQL SERVER中如何用SQL語句給表的欄位加註釋 關於注釋這個問題,之前沒用SQL語句去添加過,都是在Enterprise Manager裡面添加的:( 查了一下資料,得知Microsoft在SQL Server 2000中引入了擴充屬性,使用者可在各種資料庫物件上定義這些屬性。這些擴充屬性可用於儲存與資料庫物件有關的應用程式或網站特有的資訊。 可以用sp_addextendedproperty將新擴充屬性添加到資料庫物件中。如果屬性已經存在,則過程失敗。 用法如下:sp_addextendedproperty
    [ @name = ] { 'property_name' }
    [ , [ @value = ] { 'value' }
        [ , [ @level0type = ] { 'level0_object_type' }
         , [ @level0name = ] { 'level0_object_name' }
            [ , [ @level1type = ] { 'level1_object_type' }
             , [ @level1name = ] { 'level1_object_name' }
                    [ , [ @level2type = ] { 'level2_object_type' }
                     , [ @level2name = ] { 'level2_object_name' }
                    ]
            ]
        ]
    ]   參數
[ @name = ] { 'property_name' }
要添加的屬性名稱。property_name 的資料類型為 sysname,它不能是 NULL。名稱可能還包括空白或非字母數字字串和二進位值。  註:property_name='MS_Description'時,為添加註釋  [ @value = ] { 'value' }將要與屬性相關聯的值。value 的資料類型為 sql_variant,帶有預設設定 NULL。value 的大小不能超過 7,500 位元組;否則 SQL Server 會產生錯誤。  [ @level0type = ] { 'level0_object_type' }使用者或使用者定義型別。level0_object_type 的資料類型為 varchar(128),其預設值為 NULL。有效輸入是 USER、TYPE 和 NULL。  [ @level0name = ] { 'level0_object_name' }指定的 0 級物件類型的名稱。level0_object_name 的資料類型為 sysname,其預設值為 NULL。  [ @level1type = ] { 'level1_object_type' }1 級對象的類型。level1_object_type 的資料類型為 varchar(128),其預設值為 NULL。有效輸入是 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE 和 NULL。  [ @level1name = ] { 'level1_object_name' }指定的 1 級物件類型的名稱。level1_object_name 的資料類型為 sysname,其預設值為 NULL。  [ @level2type = ] { 'level2_object_type' }2 級對象的類型。level2_object_type 的資料類型為 varchar(128),其預設值為 NULL。有效輸入是 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER 和 NULL。  [ @level2name = ] { 'level2_object_name' }指定的 2 級物件類型的名稱。level2_object_name 的資料類型為 sysname,其預設值為 NULL。  傳回碼值
0(成功)或 1(失敗)  注釋1.系統對象不允許有擴充屬性。 2.
對象是按層級區分的,0 級為最高,2 級為最低。當使用者添加、更新或刪除擴充屬性時,必須指定所有更進階別的對象。例如,如果使用者要向 1
級對象添加擴充屬性,就必須指定所有 0 級資訊。如果使用者要向 2 級對象添加擴充屬性,則必須提供關於 0 級和 1 級的所有資訊。 3.在每個層級上,物件類型和對象名可唯一地標識對象。如果指定了一個對中的任一方,則必須指定另一方。 4.給定了有效 property_name 和 value,如果沒有任何物件類型和名稱,則屬性屬於當前資料庫。如果指定物件類型和名稱,則還必須指定父物件和類型。否則,SQL Server 會產生錯誤。  許可權
db_owner 和 db_ddladmin 固定資料庫角色的成員可以將擴充屬性添加到任何對象中。使用者可以為他們所擁有的對象添加擴充屬性。然而,只有 db_owner 可以將屬性添加到使用者名稱稱中。  樣本

下面的樣本給表"T1"的"ID"列添加註釋:

Create table T1 (id int , name char (20))GOEXEC sp_addextendedproperty 'MS_Description', 'Employee ID', 'user', dbo, 'table', T1, 'column', id  另外 sp_updateextendedproperty:更新現有擴充屬性的值。 sp_dropextendedproperty:除去現有的擴充屬性。 FN_LISTEXTENDEDPROPERTY:檢索現有擴充屬性的值  在Oracle中可用COMMENT語句給欄位加註釋,如下: COMMENT ON COLUMN employees.job_id
   IS 'abbreviated job title'; 刪除注釋: COMMENT ON COLUMN employees.job_id IS ' '; 更詳細的文法參考Oracle文檔
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.