我想检测可用的 SQL Server Express 引擎版本,以便我可以连接到 (localdb)\v.11(SQL Server 2012 per https://learn.microsoft.com/en-us/previous-版本/sql/sql-server-2012/hh510202(v=sql.110)?redirectedfrom=MSDN#Anchor_1 ) 或 (localdb)\MSSQLLocalDB (SQL Server 2014 及更高版本,每https://learn.microsoft.com/en- us/sql/database-engine/configure-windows/sql-server-express-localdb?view=sql-server-ver15&redirectedfrom=MSDN&viewFallbackFrom=sql-server-2014#Anchor_1 ) 尝试在连接字符串中附加文件时的实例名称使用 AttachDBFileName= 机制。
我很可能想以某种方式从 Powershell 执行此操作,但无论哪种方法可靠,我都可以使用。我确实知道,有时 LocalDB 连接可能会有点慢,因为它附加文件并按需启动,因此与真正的 SQL Server 连接相比,我过去对这些 LocalDB 连接的连接超时非常宽容,所以我宁愿不尝试连接并等待超时,因为我认为我已经有一个夸大的超时只是为了正常的成功连接。
您可以检查 Windows 注册表以获取已安装的版本。
例如,在 Powershell 中,您可以使用它来查找所有已安装的版本(注意可能安装了多个版本)
您可能想检查
12.0
结果中是否有或向上。