Sql-Server-Localdb

連接前檢測可用的 SQL Server Express 引擎版本是什麼?

  • July 13, 2021

我想檢測可用的 SQL Server Express 引擎版本,以便我可以連接到 (localdb)\v.11(SQL Server 2012 per https://docs.microsoft.com/en-us/previous-版本/sql/sql-server-2012/hh510202(v=sql.110)?redirectedfrom=MSDN#Anchor_1 ) 或 (localdb)\MSSQLLocalDB (SQL Server 2014 及更高版本,每https://docs.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 中,您可以使用它來查找所有已安裝的版本(注意可能安裝了多個版本)

(Get-ChildItem
  -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server Local DB\Installed Versions")
.PSChildName

您可能想檢查12.0結果中是否有或向上。

引用自:https://dba.stackexchange.com/questions/295615