我有一个安装代码,它通过从注册表项读取版本号来检查安装的 SQL Server 的版本
SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion
-> current version.
我安装了 SQL Server 2012 Express,但该 key 不存在。
SQL Server 2012(非 Express)确实有这个键。
在我去更改代码以实际运行查询来获取版本之前 - 是否还有其他注册表项可以保存快速版本号?
谢谢。
最佳答案
您需要检查此键以获取计算机上已安装实例的列表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL
这将列出所有可用的实例。这些又是注册表项的名称,因此如果您找到 SQLEXPRESS
的项,它将有一个字符串值 - 在我的例子中,它是 MSSQL12.SQLEXPRESS
.
使用该值,再次在注册表中查找:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\(instance-name)
此注册表子树包含有关此特定实例的大量信息,包括(在 Setup
子树中)有关版本等的信息
关于sql-server-2012 - 注册表中的 SQL Server 2012 Express 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34447791/