MS SQL爲字段添加說明

以ms sql server 14  v17爲例。sql

以下表dbo.Q中有一個字段''數據庫

 

 

首先在數據庫的系統存儲過程列表中:ide

 

找到sys.sp_addextendedproperty,使用這個爲字段添加一個說明。spa

 

EXECUTE [sys].[sp_addextendedproperty]
@name=N'MS_Description', @value=N'數量' ,
@level0type=N'SCHEMA',@level0name=N'dbo',
@level1type=N'TABLE',@level1name=N'Q',
@level2type=N'COLUMN',@level2name=N'qty'
View Code

 

執行結果:3d

 

若是你不清楚MS_Description是否存在時,再次執行上面的存儲過程,你會獲得一個error提示:code

 

這個時候,你能夠在執行前,先來判斷一下是否存在:server

 

IF EXISTS (SELECT TOP 1 1 FROM fn_listextendedproperty('MS_Description', 'SCHEMA', N'dbo', 'TABLE', N'Q', 'COLUMN', N'qty'))
    PRINT 'exists'
ELSE
    PRINT 'not exists'
View Code

 

好的,若是咱們知道說明屬性已經存在,但內容不正確,咱們想要修改它:blog

此時,你能夠DROP以後,再添加。ip

 EXECUTE [sys].[sp_dropextendedproperty] 'MS_Description',
                                         'SCHEMA', N'dbo',
                                         'TABLE', N'Q',
                                         'COLUMN', N'qty'
View Code

 

或者,你不想這樣麻煩,你能夠直接使用update來處理。get

 

EXECUTE [sys].[sp_updateextendedproperty] 
@name=N'MS_Description', @value=N'庫存數量' ,
@level0type=N'SCHEMA',@level0name=N'dbo',
@level1type=N'TABLE',@level1name=N'Q',
@level2type=N'COLUMN',@level2name=N'qty'
View Code

 

再次去看看修改後的字段說明內容

 

到最後,想說的,能夠寫成一個動態的SQL包裝成一個自定義存儲過程。

這樣子,咱們無論是在添加,或是更新時,直接傳入參數便可。

相關文章
相關標籤/搜索