成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server 2005列出所有存儲過程如何進行?

數據庫 SQL Server
如果你想更好的了解SQL Server 2005列出所有存儲過程的實際操作的相關內容的話,下面的文章你不妨瀏覽,望你能會獲得自己想要的東西。

如果你想更好的了解SQL Server 2005列出所有存儲過程的實際操作的相關內容的話,如果你想更好的了解SQL Server 2005列出所有存儲過程的實際操作的相關內容的話,下面的文章你不妨瀏覽,望你能會獲得自己想要的東西。

對于數據庫管理員來說,可以經常想了解一些之前未聽說過的存儲過程,特別是無文檔類型的存儲過程?;蛟S是用這些存儲過程,能夠簡化日常的數據管理。

 

對于數據庫管理員來說,可以經常想了解一些之前未聽說過的存儲過程,特別是無文檔類型的存儲過程?;蛟S是用這些存儲過程,能夠簡化日常的數據管理。

 

為了查找這些存儲過程,你可以花時間在互聯網搜索,查看一些你還未知道的存儲過程,也許在一兩個小時您可能會發現你想要...也許你很幸運的找到,其他人在他們的文章中列出所有的存儲過程 ,函數和視圖,并介紹了如何使用這些存儲過程。

但其實,您可以在一分鐘之內就可以自己列出這些存儲過程、函數和視圖的清單!這份名單甚至包括SQL Server中所有無文檔的存儲過程。通過這個清單,你就可以確定你所想要找的存儲過程。

SQL Server 2005實際上保存了所有存儲過程的列表,包括有文檔的、無文檔的,甚至是用戶自定義的!所有這些信息,都包含在系統表中。最簡單的方法是使用一個系統視圖,特別是sys.all_objects這個視圖來查閱。

您也可以使用sys.procedures目錄視圖,但我的測試結果,發現這個視圖會過濾掉一些儲存過程。

您也可以使用系統儲存過程sp_stored_procedures返回當前環境中的存儲過程列表 ,但這個存儲過程同樣也限制了存儲過程返回值。

通過對比,我覺得:如果想獲得SQL Server 2005中所有的儲存程序,建議使用sys.all_objects這個系統視圖,sys.Procedures或sp_Stored_Procedures這兩個視圖會因為某些未知原因,過濾掉一些內容,造成信息不全。

存儲過程信息是存儲在各自用戶數據庫中的系統表中的。SQL Server 2005保存了存儲過程的***標識信息,如存儲過程的名稱、創建時間、修改時間、是否來自微軟等等。

如何確保所有的用戶數據庫都能夠自動創建這些存儲過程呢?

當SQL Server部署完成后,微軟提供的存儲過程,是保存在master數據庫中的。當您新建一個數據庫時,master數據庫將作為模板數據庫,因此,master數據庫中的所有存儲過程將自動創建到你所新建的數據庫中。

如果你想創建一個存儲過程,并希望能夠自動分發到所有的數據庫中,你可以在master數據庫中建立該存儲過程,這樣之后新創建的數據庫中,將自動包含你新建的這個存儲過程;但對于之前已經存在的數據庫,你仍需要到每個數據庫中手動創建這個存儲過程。

一、列出所有的儲存過程

以下代碼列出了SQL Server 2005中存在的所有儲存過程。

  1. USE [your_database_name_here];   
  2. GO   
  3. SELECT * FROM sys.all_objects   
  4. WHERE ([type] = 'P' OR [type] = 'X' OR [type] = 'PC')   
  5. ORDER BY [name];   
  6. GO  

如果您已經安裝了SQL Server 2005,并使用了所有的默認設置時,你將看到類似一下界面:

 

上面這個命令,通過Type對象進行過濾。從下表中,你可以確定自己所需的對象的類型,然后根據你的實際情況,調整WHERE子句中的類型。

此列表僅列出了意見,職能和程序。

二、用戶自定義存儲過程

在日常使用中,另一個字段“is_ms_shipped”也經常用來篩選記錄。該字段用來判斷存儲過程是有微軟發布的 ,如果最初是由微軟發布的,則該字段的值為0;如果不是由微軟發布的,則該字段的值為1 。

在上面的T-SQL語句的基礎上,您只要增加個限制條件“and [ is_ms_shipped ] = 0 ”,就可以找到不是微軟創建的存儲過程,這些或許是你或者第三方軟件商訪問數據庫時創建的。如果您只想看看微軟提供的儲存過程,只要將值從0到1即可 。

下面舉例說明,通過一個T-SQL代碼演示如何獲取只有用戶定義的存儲過程。

  1. USE [your_database_name_here];   
  2. GO   
  3. SELECT * FROM sys.all_objects   
  4. WHERE ([type] = 'P' OR [type] = 'X' OR [type] = 'PC')   
  5. AND [is_ms_shipped] = 0   
  6. ORDER BY [name];   
  7. GO  

需要注意的是,這個語句的執行結果,因每個人的數據庫的情況不同,而得到不同的記錄列表。情況而異。執行之后,將看到類似下圖的輸出結果。

 

三、小結

通過上面的例子可以看到,通過少量代碼,我們就可以很容易地、快速地獲得自己所用的SQL Server 的存儲過程列表,你不必在一個個網站中搜索這些存儲過程了。你可能會學到一個之前自己花了很大精力編寫的復雜腳本,現在直接用一個存儲過程就可以實現同樣的效果了。

請記住,當使用一個不能確定來源或結果的存儲過程,應該在測試系統先驗證;從來沒有使用任何沒有得到徹底的測試在生產環境中。

本文只是告訴各位可以用來獲得SQL Server 2005中所有存儲過程的方法,但不是鼓勵你隨意使用任何類型的存儲過程,特別是無文檔類型的。Microsoft一再聲明:微軟對所有無文檔的存儲過程,擴展存儲過程,函數和視圖,均不提供任何相關的支持。

【編輯推薦】

  1. SQL Server 2008高可用性的優缺點描述
  2. SQL Server 2005兩種快照隔離機制的不同之處
  3. SQL Server排序遇到NULL,不怕不帕!
  4. SQL Server行轉列的什么情況下被用?
  5. SQL Server數據庫和Oracle行轉列的特殊方案描述
責任編輯:佚名 來源: 51CTO網絡整理
相關推薦

2010-07-22 16:13:53

2011-09-01 16:13:37

Visual StudSQL Server 存儲過程

2010-07-19 11:10:58

SQL Server

2010-09-14 10:36:23

sql server存

2011-08-01 10:23:21

2011-07-14 13:38:34

2010-07-19 08:51:58

SQL Server

2011-08-10 10:06:54

存儲過程SQL Server IP地址歸屬地查詢

2011-09-01 17:35:56

SQL Server DDL語句

2009-08-06 16:44:06

2010-07-26 14:43:31

SQL Server存

2010-07-15 12:38:14

SQL Server存

2010-07-08 17:15:04

SQL Server存

2015-10-15 09:53:46

SQL恢復

2010-06-28 13:45:16

SQL Server

2011-03-28 10:46:36

sql server存儲分頁

2010-09-25 15:37:38

SQL語句

2009-09-17 19:19:17

CLR存儲過程

2010-07-09 13:01:50

SQL Server

2010-06-18 10:34:38

SQL Server
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产亚洲欧美日韩精品一区二区三区 | 日韩视频在线一区 | 免费亚洲婷婷 | 亚洲欧美国产精品一区二区 | 韩国精品一区 | 欧洲一区视频 | 日韩欧美二区 | 欧美精品一区在线发布 | 久久久久久久电影 | 91视频88av| 国产精品a久久久久 | av在线一区二区三区 | 亚洲性综合网 | 国产精品美女一区二区 | 亚洲 欧美 综合 | 免费观看一级特黄欧美大片 | 96国产精品久久久久aⅴ四区 | 99热这里有精品 | 国产激情一区二区三区 | 日韩欧美成人一区二区三区 | 国产99久久精品一区二区永久免费 | 欧美一区在线看 | 99热这里| 国产精品精品3d动漫 | 国产精品自产av一区二区三区 | 97高清国语自产拍 | 国产欧美精品在线观看 | 不卡视频一区二区三区 | 97精品视频在线 | 国产精品电影在线观看 | 成人免费视频一区 | 懂色一区二区三区免费观看 | 丁香婷婷综合激情五月色 | 毛片一区| 午夜精品一区二区三区三上悠亚 | 黄色国产 | 午夜av一区二区 | 亚洲精品在线视频 | 免费视频一区二区 | 一本一道久久a久久精品蜜桃 | 综合中文字幕 |