SQL Server 配置管理器 → SQL Server 服務 → 啟動 SQL Server (MSSQLSERVER)、SQL Server Browser。修改配置後需重啟服務。
SSMS 連接 → 安全性 → 登錄名 → sa 右鍵屬性:
• 常規:設置密碼
• 狀態:登錄→啟用,連接到數據庫引擎→授予
根節點右鍵屬性 → 安全性 → 選 SQL Server 和 Windows 身份驗證模式。否則 sa 登錄失敗報「未知錯誤」。
SQL Server 網絡配置 → MSSQLSERVER 協議 → 啟用 Named Pipes 和 TCP/IP。解決「管道另一端無進程」錯誤 (Error 233)。
根節點屬性 → 連接 → 勾選 允許遠程連接到此服務器。
#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" \
no_namespace rename("EOF", "adoEOF")
_ConnectionPtr m_pConnection;
_CommandPtr m_pCommand;
_RecordsetPtr m_pRecordSet;
CoInitialize(NULL);
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect = "Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;"
"User ID=sa;Initial Catalog=QPServerInfoDB;Data Source=192.168.1.7,1433;";
m_pConnection->Open(strConnect, "", "", adModeUnknown);
Persist Security Info=True:連接成功後保留密碼信息(連接字符串可獲取密碼),False 則隱藏Data Source:IP+端口(默認 1433)或機器名Initial Catalog:數據庫實例名新建 test.udl 文件,雙擊打開「數據鏈接屬性」對話框,配置提供程序與連接參數,點擊「測試連接」驗證字符串有效性。
| 錯誤 | 原因 | 解決 |
|---|---|---|
| IDispatch error #3149 | 連接字符串錯誤/服務未啟動 | 用 .udl 測試,檢查服務狀態 |
| 未知錯誤 / 登錄失敗 | 身份驗證模式未設為混合模式 | SSMS 設置 SQL Server 和 Windows 模式 |
| 管道另一端無進程 (233) | Named Pipes/TCP/IP 未啟用 | 配置管理器啟用協議並重啟服務 |
| 遠程過程調用失敗 [0x800706be] | 安裝多版本 SQL Server 衝突 | 協載多餘版本 |
