為什麼我收到'未找到資料來源名稱且未指定預設驅動程式”的資訊以及如何修復它?
P粉080643975
P粉080643975 2023-10-18 13:56:36
0
2
763

當嘗試在 Windows 上編寫一個透過 ODBC 連接到資料庫的程式時,出現以下錯誤:

[Microsoft][ODBC 驅動程式管理員] 未找到資料來源名稱且未指定預設驅動程式。

我確信我的程式碼是正確的。它甚至可以在另一台電腦上運行。

為什麼我會收到此錯誤?我該如何修復它?

P粉080643975
P粉080643975

全部回覆(2)
P粉147045274

在設計模式下,已將值設為屬性 TFDConnection.ConnectionDefName 必須為空。

P粉221046425

什麼原因導致此錯誤?

簡單地說,錯誤訊息告訴您 ODBC 驅動程式管理員找不到您在連接字串或 DSN 中指定的驅動程式。

這可能有 3 個常見原因:

  1. 您嘗試使用的驅動程式未安裝在您的系統上
  2. 驅動程式已安裝,但與您正在執行的程式碼的位元數不符
  3. 您在輸入驅動程式名稱時出錯

如何檢查我的系統上安裝了哪些驅動程式?

您可以透過前往 ODBC 資料來源管理器來檢查系統上安裝的驅動程式。要開啟它,請按 ⊞ Win R,然後輸入:odbcad32.exe。然後檢查選項卡驅動程式以取得已安裝的驅動程式。 名稱列指示您應在連接字串或 DSN 中使用的確切名稱。

如果您使用的是 64 位元 Windows,則只列出安裝在 你的系統。若要查看安裝了哪些32 位元驅動程序,請按⊞ Win R,然後輸入:C:\Windows\SysWOW64\odbcad32.exe code>,然後再次轉到“驅動程式”選項卡。

驅動程式已安裝,但可能位數錯誤,我該怎麼辦?

然後,您有兩個選擇,要么調整程式運行的位數,要么安裝具有不同位數的驅動程式。

Windows 上預設安裝的某些驅動程式僅具有 32 位元變體。這些不能與 64 位元程式一起使用。

您通常可以在工作管理員中識別程式正在執行的位數。在 Windows 10 中,所有 32 位元程式的名稱後面都會附加 (32-bit)。如果不存在,則您可能正在運行 64 位元程序,並且大多數現代程式語言和環境預設在 64 位元上運行,但允許您切換到 32 位元。但是,不同程式語言的具體細節超出了本問題的範圍。

如何驗證我沒有輸錯驅動程式名稱?

ODBC 連線字串如下所示:

DRIVER={DriverName};ParameterName1=ParameterValue1;ParameterNameN=ParameterValueN;

如果驅動程式名稱部分可能包含特殊字符,則需要以大括號分隔,並且需要與已安裝的驅動程式名稱完全匹配(如ODBC 資料來源管理器中所示),包括空格和印刷字符,但不包括大寫字母。

請注意,對於已部署的程式碼,驅動程式必須存在於執行程式碼的電腦/伺服器上。

我沒有驅動程序,或位數錯誤,我在哪裡可以獲得正確的驅動程式?

這取決於您要使用哪個驅動程式。

常見驅動程式清單及下載位置(所有 32 位元和 64 位元均位於相同 URL):

如果您要使用的驅動程式未列出,通常可以使用 Google 輕鬆找到該位置。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!