2013-01-22 55 views
4

我想在Delphi XE3中使用ADO連接,並且遇到很大困難。delphi mysql ado connectivity

我的機器上安裝了ODBC驅動程序(Win7 x64),驅動程序在ODBC數據源下顯示爲'mySQL ODBC 5.1驅動程序'。 Mysql版本5.5。

我的理解是,我應該能夠把TadoConnection組件的形式,然後分配如下適當的連接字符串給它:當我運行應用程序

var 
    conn: TADOConnection; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
    conn := conn.Create(nil); 
    conn.ConnectionString := 'DRIVER={MySQL ODBC 5.1 Driver}; SERVER=myserver; PORT=3306; DATABASE=mysql; UID=myuser; PASSWORD=mypassword;OPTION=3;'; 
    conn.Connected := true; 
end; 

,然後單擊按鈕,我出現錯誤

Project Project1.exe引發異常類EOleException,消息'[Microsoft] [ODBC Driver Manager]未找到數據源名稱並且未指定默認驅動程序'。

任何人都可以幫助我嗎?我錯過了什麼?我試着在網上尋找例子,迄今沒有喜悅..任何意見大大得到...

+1

最有可能你已經配置了C:\ Windows \ System32 \ odbcad32.exe instedad of C:\ Windows \ SysWOW64 \ odbcad32.exe – bummi

+2

這通常是安裝64位驅動程序,然後嘗試從32位代碼訪問它(反之亦然)。驅動程序和可執行文件是否都是相同的「位」(例如,32位或64位)?如果是這樣,你配置了32位ODBC驅動程序(如上面的@bummi所述)嗎? (控制面板中的默認值是64位ODBC管理員。) –

+1

我認爲你們都可以做些事情。我打開了syswow64 \ odbcad32.exe,並且沒有可用的驅動程序。這是否意味着我有錯誤的司機?我應該擁有哪一個?我有一個32位的代碼庫,所以我應該使用一個32位的驅動程序 - 我認爲我的驅動程序是32位,就好像我打開system32 \ odbcad32.exe驅動程序顯示,如果我點擊添加(而不是在syswow64 \ odbcad32.exe)...謝謝 – MrH

回答

1

你只需要檢查你的ODBC驅動程序...去控制面板..管理工具...並檢查你有哪些ODBC驅動程序版本...然後使用正確的...例如,我使用的是最新版本的MySQL ODBC。驅動程序= {MySQL ODBC 5.2 ANSI驅動程序}