什么是XP_REGREAD和XP_INSTANCE_REGREAD之间的区别.如何使用它们,是否有关于这些的文档?
Joe*_*lli 28
xp_regread读取您指定的文字注册表路径.xp_instance_regread"转换"您指定的路径,以便它与您当前使用的SQL Server实例匹配.
例如,我在我的机器上安装了SQL Server的Developer和Express版本.我连接到Express实例并运行以下两个命令:
declare @dir nvarchar(4000)
exec master.dbo.xp_regread
N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\Setup',
N'SQLPath',
@dir output
select @dir
exec master.dbo.xp_instance_regread
N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\Setup',
N'SQLPath',
@dir output
select @dir
Run Code Online (Sandbox Code Playgroud)
第一个返回的C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL是在我指定的位置找到的值,但它不是我的Express实例的正确安装路径.
第二个返回c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL,这是我的Express实例的正确路径.实际读取的值HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL.1\Setup与我提供给xp_instance_regread的路径完全不同.
| 归档时间: |
|
| 查看次数: |
28795 次 |
| 最近记录: |