標籤:style blog http color os strong io 資料
Delphi串連MySQL真麻煩,研究了一天,從網上找了無數文章,下載了無數外掛程式都沒解決。最後返璞歸真,老老實實用ADO來串連,發現也不是很順利,但最終還是串連成功了。多少有點心得:ADO各個組件的作用和聯絡必須清楚,否則設定起來很容易混亂。總結一下用ADO串連MySQL5.1要點:
1、需要下載MySQL的ODBC支援,我用的官網mysql-connector-odbc-5.1.7-win32.msi(這個一般沒問題,下載安裝即可)
2、通過ODBC管理建立系統DSN(這個也簡單,無非是選擇MySQL的ODBC,設定伺服器、使用者名稱、密碼)
3、熟悉ADO控制項知道其作用和相互聯絡。(痛點)
TADOConnection作用是通過設定ConnectionString連接字串(例如:伺服器localhost、使用者名稱root、密碼123456)串連預設資料庫DefaultDatabas(mysql)。
TADOQuarry作用是執行查詢語句並儲存查詢結果,需要設定SQL(如 select * from user;),感覺這裡SQL語句只能是一條。該組件與TADOConnection聯絡密切,Connection屬性應該設定為TADOConnection的執行個體(如conMySQL)。
這樣有資料庫連接,有查詢操作,剩下的任務就是把結果顯示出來。這裡需要兩個組件支援:
TDataSource顧名思義:資料來源,是資料顯示和查詢結果之間串連的一個橋樑,其DataSet屬性設為TADOQuarry的執行個體(qryMySQL)
TDBGrid是顯示結果的資料群組件,其DataSource屬性設定為TDataSource執行個體即可(如dsMySQL)
4、啟用串連以生效,TADOConnection的connected設定為真,另外TADOQuarry的active設定為真。
在實際應用中,不用建立系統DSN,只需要安裝ODBC後即可用動態方式建立串連。
來源: <DelphiXE串連MySQL5.1 - Delphi7456 - 部落格園>
procedure TForm1.Button1Click(Sender: TObject);
begin
try
ADOConnection1.ConnectionString:=(‘DRIVER={MySQL ODBC 3.51 Driver};‘+
‘SERVER=localhost;‘+
‘DATABASE=wm;‘+
‘USER=root;‘+
‘PASSWORD=mcncc;‘+
‘OPTION=3;‘);
ADOConnection1.Close;
ADOConnection1.Open;
except
application.MessageBox(‘無法串連資料庫伺服器.請與管理員聯絡‘,‘提示‘,MB_ICONINFORMATION);
end ;
ADOQuery1.Active:=true;
end;
來自為知筆記(Wiz)