SQL Server里一些未公開的擴展存儲過程

SQL Server里一些未公開的擴展存儲過程

[轉帖]?博客天地 www.inbaidu.com

SQL Server里一些未公開的擴展存儲過程

擴展存儲過程(xp)是直接運行在SQL Server地址空間里的動態鏈接庫,是通過使用SQL Server開放數據服務API(SQL Server Open Data Services API)開發的。我們可以像執行普通存儲過程一樣,在“查詢分析器”里運行擴展存儲過程。擴展存儲過程被用于SQL Server的擴展功能,我們可以直接利用SQL Server附帶的眾多擴展存儲過程,也可以用C或C++等編程語言編寫我們自己的擴展存儲過程。
在本文中,我將告訴大家一些未公開的有用的擴展存儲過程。這些存儲過程可以運行于SQL Server 7.0,當然SQL Server 2000也可以。

1、sp_MSgetversion
這個擴展存儲過程可以用來獲得Microsoft SQL Server的當前版本。要獲得SQL Server的版本,執行:
EXEC master..sp_MSgetversion
注意,還有一種方法獲得SQL Server的當前版本(這種方法能得到更多信息),那就是用下面的SELECT語句:
SELECT @@version

2、xp_dirtree
這個擴展存儲過程可以用于為在擴展存儲(xp)中命名的文件夾列出所有文件夾。要列出C:\MSSQL7中的所有文件夾,執行:
EXEC master..xp_dirtree 'C:\MSSQL7'

3、xp_enum_oledb_providers
這個擴展存儲過程用于列出所有可用的OLE DB提供者(OLE DB providers)。它返回提供者的名稱、解析名稱(Parse Name)和提供者的描述。要獲得你的SQL Server的所有OLE DB提供者,執行:
EXEC master..xp_enum_oledb_providers

4、xp_enumcodepages
這個擴展存儲過程可以用來列出所有你的SQL Server的代碼頁(code pages)、字符集和它們的描述。要查看這些信息,執行:
EXEC master..xp_enumcodepages

5、xp_enumdsn
這個擴展存儲過程系統所有的DSN和它們的描述。要查看系統DSN,執行:
EXEC master..xp_enumdsn

6、xp_enumerrorlogs
這個擴展存儲過程返回所有錯誤日志的列表和它們的最后更改日期。要獲得錯誤日志列表,執行:
EXEC master..xp_enumerrorlogs

7、xp_enumgroups
這個擴展存儲過程返回Windows NT組及其描述的列表。要獲得Windows NT組的列表,運行:
EXEC master..xp_enumgroups

8、xp_fileexist
我們可以用這個擴展存儲過程來確定一個特定的文件是否在磁盤上存在。用法:
EXECUTE xp_fileexist filename [, file_exists INT OUTPUT]
比如要檢查C:盤是否存在boot.ini文件,執行:
EXEC master..xp_fileexist 'c:\boot.ini'

9、xp_fixeddrives
這是一個非常有用的擴展存儲過程,他返回所有硬盤和它們的空閑空間有多少MB的列表。要查看驅動器列表,執行:
EXEC master..xp_fixeddrives

10、xp_getnetname
這個擴展存儲過程返回你連接的SQL Server的WINS名。查看這個名稱,執行:
EXEC master..xp_getnetname

11、xp_readerrorlog
這個擴展存儲過程返回錯誤日志的內容。我們可以在SQL Server 7.0的默認目錄C:\MSSQL7\Log里找到錯誤日志。要查看錯誤日志的話,執行:
EXEC master..xp_readerrorlog

12、xp_regdeletekey
這個擴展存儲過程將從注冊表里刪除一個主鍵。用這個功能的時候務必小心!用法:
EXECUTE xp_regdeletekey [@rootkey=]'rootkey',
??????????????????????? [@key=]'key'
比如要刪除“HKEY_LOCAL_MACHINE”中的“SOFTWARE\Test”這個主鍵,執行:
EXEC master..xp_regdeletekey @rootkey='HKEY_LOCAL_MACHINE',
???????????????????????????? @key='SOFTWARE\Test'

13、xp_regdeletevalue
這個擴展存儲過程將刪除注冊表里某個特定的鍵值。用這個功能的時候務必小心!用法:
EXECUTE xp_regdeletevalue [@rootkey=]'rootkey',
????????????????????????? [@key=]'key',
????????????????????????? [@value_name=]'value_name'
比如,從“HKEY_LOCAL_MACHINE”中刪除“SOFTWARE\Test”下的“Testvalue”,執行:
EXEC master..xp_regdeletevalue @rootkey='HKEY_LOCAL_MACHINE',
?????????????????????????????? @key='SOFTWARE\Test',
?????????????????????????????? @value_name='Testvalue'

14、xp_regread
這個擴展存儲過程從注冊表里度數據。用法:
EXECUTE xp_regread [@rootkey=]'rootkey',
?????????????????? [@key=]'key'
?????????????????? [, [@value_name=]'value_name']
?????????????????? [, [@value=]@value OUTPUT]
比如要把“HKEY_LOCAL_MACHINE”中“SOFTWARE\Test”下的“Testvalue”讀到變量@test,執行:
DECLARE @test varchar(20)
EXEC master..xp_regread @rootkey='HKEY_LOCAL_MACHINE',
??????????????????????? @key='SOFTWARE\Test',
??????????????????????? @value_name='Testvalue',
??????????????????????? @value=@test OUTPUT
SELECT @test

15、xp_regwrite
這個擴展存儲過程用來寫注冊表。用法:
EXECUTE xp_regwrite [@rootkey=]'rootkey',
??????????????????? [@key=]'key',
??????????????????? [@value_name=]'value_name',
??????????????????? [@type=]'type',
??????????????????? [@value=]'value'
比如把變量“Test”寫到“HKEY_LOCAL_MACHINE”中“SOFTWARE\Test”下的“Testvalue”,執行:
EXEC master..xp_regwrite
???? @rootkey='HKEY_LOCAL_MACHINE',
???? @key='SOFTWARE\Test',
???? @value_name='Testvalue',
???? @type='REG_SZ',
???? @value='Test'

16、xp_subdirs
這個擴展存儲過程用于為在擴展存儲(xp)中命名的文件夾列出文件夾列表。比之于xp_dirtree,xp_subdirs只返回那些深度為1(depth = 1)的文件夾。這里是例子:
EXEC master..xp_subdirs 'C:\MSSQL7'

注意:記住這些未公開的擴展存儲過程不是Microsoft官方支持的,并且它們可能在下一個版本的SQL Server中無法找到。

轉載于:https://www.cnblogs.com/sczw-maqing/p/3193121.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/259593.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/259593.shtml
英文地址,請注明出處:http://en.pswp.cn/news/259593.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux技巧:一次刪除一百萬個文件最快方法

昨天,我看到一個非常有趣的刪除一個目錄下的海量文件的方法。這個方法來自http://www.quora.com/How-can-someone-rapidly-delete-400-000-files里的Zhenyu Lee。 他沒有使用find 或 xargs,他很有創意的利用了rsync的強大功能,使用rsync –de…

install python_python install on windows 10

圖 1官網2、下載安裝包:圖 2 Downloads – windows圖 3選擇版本圖 4選擇離線安裝版本圖 5保存下載文件—文件名自己可以修改可能有人看到windows 幾個版本,對幾個版本有迷惑的地方,解釋圖 6幾個版本的差異說明文字解釋:An e…

iOS開發常見錯誤

錯誤1: 1.1這種錯誤都是storyboard有問題 解決:當前storyboard的Custom Class是MJViewController,代碼中MJViewController繼承自UITableViewController。 而storyboard目前提供的是UIViewController,并沒有為MJViewController提供…

windows bat 批處理 !vm 合并快播文件

今天簡單的寫了一個bat批處理文件 用來處理快播的p2p的文件,一般回事這樣的目錄 你可以下載如下代碼 echo off for /r %%a in (.) do (echo %%acd %%acopy /b *.!mv test.rmvb ) pause保存為merge.bat,就可以執行了 代碼解釋: 掃描該目錄下的…

sso接口的調用

之前一直想sso接口已經寫好了&#xff0c;登錄注冊功能是怎么調用的呢&#xff1f;原來在登錄注冊的jsp頁面實現的接口的調用&#xff0c;頁面的校驗和驗證功能在jsp頁面即可實現。 注冊頁面&#xff1a; <% page language"java" contentType"text/html; cha…

java js獲取css方法_5種JavaScript和CSS交互的方法

原標題&#xff1a;5種JavaScript和CSS交互的方法隨著瀏覽器不斷的升級改進&#xff0c;CSS和Java之間的界限越來越模糊。本來它們是負責著完全不同的功能&#xff0c;但最終&#xff0c;它們都屬于網頁前端技術&#xff0c;它們需要相互密切的合作。我們的網頁中都有.js文件和…

(轉)Http協議經典詳解

轉自&#xff1a;http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx Author :Jeffrey 引言 HTTP 是一個屬于應用層的面向對象的協議&#xff0c;由于其簡捷、快速的方式&#xff0c;適用于分布式超媒體信息系統。它于1990…

CentOS 同步時間

來源&#xff1a;http://www.ctusky.com/16/0497/ 用date查看系統當前時間&#xff0c;date -R 可查看時區。 CentOS 同步時間由ntp服務提供&#xff0c;可以用"yum install ntp -y"安裝. 裝完后運行命令 ntpdate cn.pool.ntp.org同步時間&#xff0c;然后hwclock -w…

[逆向][Writeup]ISG2015 flagfinder - .NET程序逆向

這個題目同樣是一道.NET的逆向題&#xff0c;.NET的逆向方法在之前的博文中已經介紹過&#xff0c;這里不做重復的說明。本題的源程序可以在我的github上下載&#xff1a;https://github.com/gsharpsh00ter/reverse 0x01 逆向 flagfinder為.NET編譯的PE文件&#xff0c;用dnSpy…

spring是如何管理 事務的

Spring提供的事務管理可以分為兩類&#xff1a;編程式的和聲明式的。編程式的&#xff0c;比較靈活&#xff0c;但是代碼量大&#xff0c;存在重復的代碼比較多&#xff1b;聲明式的比編程式的更靈活方便。 1、傳統使用JDBC的事務管理 以往使用JDBC進行數據操作&#xff0c;使用…

java 編譯原理 字符串_Java編譯原理(javac)

Java中的編譯分為兩個部分&#xff1a;源碼文件編譯成字節碼文件(前端編譯)字節碼文件被虛擬機加載以后編譯成機器碼(后端編譯)對于開發來說接觸的一般都是第一個步驟也就是源碼編譯成字節碼文件(class文件)&#xff0c;第二個步驟開發幾乎不會接觸&#xff0c;因為這是虛擬機在…

sql2012一段時間無法連接報53錯誤

2019獨角獸企業重金招聘Python工程師標準>>> 解決方案 在sqlserver網絡配置下的msqlserver協議下改將ip3改成如下圖所示 轉載于:https://my.oschina.net/u/2511906/blog/840373

ICE第三篇------一些疑難點

1 間接代理 參考http://blog.sina.com.cn/s/blog_53e8499c0100lkoo.html IceGrid用于支持分布式網絡服務應用&#xff0c;一個IceGrid域由一個注冊表&#xff08;Registry&#xff09;和任何數目的節點(Node)構成。注冊表&#xff08;Registry&#xff09;和節點(Node)一起合作…

windows phone 8 使用頁面傳對象的方式 實現頁面間的多值傳遞

在做windows phone 開發的時候&#xff0c;會經常碰到頁面間之間的跳轉和傳遞數據&#xff0c;如果傳遞的值不多&#xff0c;只有兩三個&#xff0c;我們通常使用NavigationService.Navigate(new Uri("頁面名? Name“”&ID“ ”, UriKind.Relative)); 要是碰到要傳遞…

php生成圖片驗證碼代碼,PHP生成圖片驗證碼以及點擊切換的代碼

這篇文章主要介紹了PHP生成圖片驗證碼實例,同時介紹了點擊切換(看不清&#xff1f;換一張)效果實現方法,需要的朋友可以參考下這里來看下效果:現在讓我們來看下 PHP 代碼<?php session_start();function random($len) {$srcstr "1a2s3d4f5g6hj8k9qwertyupzxcvbnm&quo…

python 時間日期處理

refer to : http://www.wklken.me/posts/2015/03/03/python-base-datetime.html#datetime-string http://www.cnblogs.com/65702708/archive/2011/04/17/2018936.html http://www.runoob.com/python/python-date-time.html 轉載于:https://www.cnblogs.com/qingyuanjushi/p/640…

php 字符型轉變為數值,php怎么把字符串轉換為數值?

php怎么把字符串轉換為數值&#xff1f;下面本篇文章給大家介紹一下PHP把字符串轉換為數值的方法。有一定的參考價值&#xff0c;有需要的朋友可以參考一下&#xff0c;希望對大家有所幫助。PHP中的字符串可以很容易地轉換成數值(float / int / double類型)。在大多數用例中&am…

解決rspec 生成報告時報utf-8錯誤的方法

找到gems\1.9.1\gems\rspec-core-2.14.3\lib\rspec\core\formatters\snippet_extractor.rb文件中的第27行&#xff1a; 在這邊記錄一下&#xff0c;防止以后再遇到。。。出現這個原因是因為ruby文件用utf-8格式的&#xff0c;但是源碼都是GBK處理的&#xff0c;找到\lib\ruby\…

aspose.words復制插入同一word文檔中的某個頁面

選擇word模板 Document doc new Document(Server.MapPath("~\\templet") "\\" name.Name);doc.MailMerge.CleanupOptions doc.MailMerge.CleanupOptions & ~MailMergeCleanupOptions.RemoveUnusedRegions;DocumentBuilder builder new DocumentBu…

開源游戲服務器C#

https://github.com/ScutGame/Scut/wiki轉載于:https://www.cnblogs.com/porter/p/6408955.html