自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何通過(guò)擴(kuò)展屬性為SQL Server的索引添加注釋信息

數(shù)據(jù)庫(kù) SQL Server
本文我們主要介紹了通過(guò)擴(kuò)展屬性為SQL Server的索引添加注釋信息的方法,希望能夠?qū)δ兴鶐椭?/div>

SQL Server數(shù)據(jù)庫(kù)中,為了方便查看各個(gè)索引的含義,我們也可以為索引添加注釋信息。雖然索引沒(méi)有默認(rèn)的地方讓你加注釋信息,但是我們可以通過(guò)給索引添加擴(kuò)展屬性,來(lái)為索引添加注釋信息。本文我們主要介紹這一過(guò)程的實(shí)現(xiàn)方法,接下來(lái)就讓我們來(lái)一起了解一下吧。

選中一個(gè)索引:屬性,擴(kuò)展屬性,在表格的名稱,值里分別加上:"說(shuō)明", "這個(gè)索引的實(shí)際用處" 即可。

如果一個(gè)索引同時(shí)做了幾件事,可以這樣添加注釋:

(1)插入數(shù)據(jù)時(shí),根據(jù)date+code判斷指定的數(shù)據(jù)是否存在 (2)后臺(tái)根據(jù)date統(tǒng)計(jì)一段時(shí)間的匯總數(shù)據(jù)。

這樣當(dāng)別人不清楚一個(gè)索引的作用時(shí),只要看一下該索引的擴(kuò)展屬性即可。

如果要查看一個(gè)數(shù)據(jù)庫(kù)里的索引注釋列表可以這樣查詢:

 

  1. select  
  2.  
  3. object_name(major_id) as table_name,  
  4.  
  5. (select name from sys.indexes where object_id = major_id and index_id = minor_id) as index_name,  
  6.  
  7. name,  
  8.  
  9. value  
  10.  
  11. from sys.extended_properties  
  12.  
  13. where class_desc = 'INDEX' 

 

在開(kāi)發(fā)過(guò)程中,我們一般會(huì)在開(kāi)發(fā)數(shù)據(jù)庫(kù)上,指定各個(gè)索引的注釋,如果要把這兒的注釋同步到生產(chǎn)服務(wù)器,可以通過(guò)腳本來(lái)做:

 

  1. EXEC sp_addextendedproperty @level0type=N'SCHEMA', @level0name=N'dbo',    
  2.  
  3. @level1type=N'TABLE', @level2type=N'INDEX', @level1name=N'表名',   
  4.  
  5. @level2name=N'索引名', @name=N'說(shuō)明', @value=N'索引的實(shí)際用處' 

 

更新:sp_addextendedproperty

刪除:sp_dropextendedproperty

調(diào)用這兒的 sp_ 存儲(chǔ)過(guò)程可以完成任務(wù),但稍微有點(diǎn)繁瑣,這時(shí)可以自己創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,方便給索引添加注釋信息:

-----------------------------------------------------

-- 給指定表的指定索引設(shè)置擴(kuò)展屬性(默認(rèn)的擴(kuò)展屬性名為:'說(shuō)明'),方便為索引添加注釋

----------------------------------------------------

 

  1. ALTER PROCEDURE [dbo].[SetIndexDesc]  
  2.  
  3. @tablename    nvarchar(200),  
  4.  
  5. @indexname    nvarchar(200),  
  6.  
  7. @descvalue    nvarchar(500)  
  8.  
  9. AS  
  10.  
  11. BEGIN 

 

---先檢查索引上是否存在注釋信息,如果存在,先刪除

 

  1. if exists (  
  2.  
  3. select * from sys.extended_properties  
  4.  
  5. where class_desc = 'INDEX' and object_name(major_id) = @tablename  
  6.  
  7. and (select name from sys.indexes where object_id = major_id and index_id = minor_id) = @indexname  
  8.  
  9. ) begin  
  10.  
  11. EXEC sp_dropextendedproperty N'說(shuō)明', N'SCHEMA', N'dbo', N'TABLE', @tablename , N'INDEX', @indexname;  
  12.  
  13. end 

 

---在索引上創(chuàng)建注釋信息

 

  1. EXEC sp_addextendedproperty  
  2.  
  3. @level0type=N'SCHEMA',  
  4.  
  5. @level0name=N'dbo',  
  6.  
  7. @level1type=N'TABLE',  
  8.  
  9. @level2type=N'INDEX',  
  10.  
  11. @level1name=@tablename,  
  12.  
  13. @level2name=@indexname,  
  14.  
  15. @name=N'說(shuō)明',  
  16.  
  17. @value=@descvalue  
  18.  
  19. END 

 

調(diào)用時(shí):

exec SetIndexDesc '表名', '索引名', N'注釋信息'

如果需要把開(kāi)發(fā)數(shù)據(jù)庫(kù)的索引注釋列表同步到生產(chǎn)服務(wù)器,可以這樣做:

 

  1. select 'exec SetIndexDesc ''' + object_name(major_id) + ''', '''   
  2.  
  3. +  (select name from sys.indexes where object_id = major_id and index_id = minor_id)   
  4.  
  5. + ''', N''' + convert(nvarchar(500), value) + ''''  
  6.  
  7. from sys.extended_properties  
  8.  
  9. where class_desc = 'INDEX' and name = N'說(shuō)明' 

 

把輸出的腳本列表,在生產(chǎn)服務(wù)器上執(zhí)行一下即可。

關(guān)于通過(guò)擴(kuò)展屬性為SQL Server的索引添加注釋信息的知識(shí)就介紹到這里了,希望本次的介紹能夠帶給您一些收獲!

 

【編輯推薦】

  1. SQL Server 2008的BI組件SSAS使用詳解
  2. 關(guān)于SQL Server數(shù)據(jù)庫(kù)主鍵與索引的幾點(diǎn)區(qū)別
  3. SQL Server數(shù)據(jù)同步Merge的一個(gè)BUG及解決方法
  4. 如何將SQL Server 2008的數(shù)據(jù)降級(jí)到SQL Server 2005
  5. CASE WHEN END條件和匯總函數(shù)SUM結(jié)合使用實(shí)現(xiàn)查詢
責(zé)任編輯:趙鵬 來(lái)源: 博客園
相關(guān)推薦

2010-09-07 14:22:41

SQL語(yǔ)句

2023-10-19 14:52:27

2010-07-09 13:36:11

SQL Server數(shù)

2023-01-18 17:22:38

YAML注釋Linux

2013-04-01 15:15:35

Eclipse自動(dòng)添加Android開(kāi)發(fā)

2010-09-16 15:56:15

SQL Server表

2010-10-21 14:54:32

查詢SQL Serve

2010-07-07 10:25:00

SQL Server索

2020-07-01 16:45:13

matplotlib內(nèi)嵌圖Python

2010-07-26 09:34:24

SQL Server性

2009-04-16 17:55:15

擴(kuò)展熱插拔SQL Server

2011-08-10 15:11:23

SQL Server整理索引碎片重建索引

2010-09-16 13:42:55

SQL SERVER索

2010-07-01 12:56:07

SQL Server表

2015-05-21 10:41:29

MySQLMySQL Clust查詢處理能力

2010-07-21 11:21:05

SQL Server

2010-06-30 17:15:39

向外擴(kuò)展SQL Ser

2010-07-08 16:52:31

SQL Server索

2010-07-08 16:44:21

SQL Server索

2010-07-07 11:20:02

SQL Server聚
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)