网站建设公司怎么拉单,广州冼村是什么梗,百度热搜榜历史,网站商品图片尺寸SQL Server里一些未公开的扩展存储过程 [转帖] 博客天地 www.inbaidu.comSQL Server里一些未公开的扩展存储过程 扩展存储过程#xff08;xp#xff09;是直接运行在SQL Server地址空间里的动态链接库#xff0c;是通过使用SQL Server开放数据服务API#xff08;SQL Server…SQL Server里一些未公开的扩展存储过程 [转帖] 博客天地 www.inbaidu.comSQL Server里一些未公开的扩展存储过程 扩展存储过程xp是直接运行在SQL Server地址空间里的动态链接库是通过使用SQL Server开放数据服务APISQL 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 rootkeyHKEY_LOCAL_MACHINE, keySOFTWARE\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 rootkeyHKEY_LOCAL_MACHINE, keySOFTWARE\Test, value_nameTestvalue 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 rootkeyHKEY_LOCAL_MACHINE, keySOFTWARE\Test, value_nameTestvalue, valuetest OUTPUTSELECT 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 rootkeyHKEY_LOCAL_MACHINE, keySOFTWARE\Test, value_nameTestvalue, typeREG_SZ, valueTest 16、xp_subdirs这个扩展存储过程用于为在扩展存储xp中命名的文件夹列出文件夹列表。比之于xp_dirtreexp_subdirs只返回那些深度为1depth 1的文件夹。这里是例子EXEC master..xp_subdirs C:\MSSQL7 注意记住这些未公开的扩展存储过程不是Microsoft官方支持的并且它们可能在下一个版本的SQL Server中无法找到。 转载于:https://www.cnblogs.com/sczw-maqing/p/3193121.html