首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi 7 連接 MySQL 5.5.15 完整指南:三種實用方案

     編輯:Delphi

環境需求

  • 作業系統:Windows XP SP3
  • 開發工具:Delphi 7
  • 資料庫:MySQL 5.5.15 (完整安裝版含 ODBC 驅動)
  • ODBC 驅動下載:MySQL Connector/ODBC

方案一:ODBC 資料來源名稱 (DSN) 方式

步驟 1:確認 ODBC 驅動安裝

控制台 → 管理工具 → 資料來源 (ODBC) → 驅動程式頁籤 → 確認存在 MySQL ODBC 5.1 Driver

步驟 2:建立系統 DSN

系統 DSN → 新增 → 選擇 MySQL ODBC 5.1 Driver → 設定:

  • Data Source Name:自訂 (如 MySQL_World)
  • TCP/IP Server:127.0.0.1 (或遠端 IP)
  • User:root
  • Password:資料庫密碼
  • Database:world (測試用範例資料庫)

按 Test 驗證連線成功。

步驟 3:Delphi 元件配置

表單放置:TADOConnection、TADOQuery、TDataSource、TDBGrid

屬性關聯:

ADOQuery1.Connection := ADOConnection1;
DataSource1.DataSet := ADOQuery1;
DBGrid1.DataSource := DataSource1;

ADOConnection1 連接字串設定:

  • Provider:Microsoft OLE DB Provider for ODBC Drivers
  • Use Data Source Name:選擇剛建立的 DSN (MySQL_World)
  • 其餘欄位留空

方案二:ODBC 無 DSN (Driver 字串直連)

相同元件配置,ADOConnection1.ConnectionString 直接指定:

Driver={MySQL ODBC 5.1 Driver};Server=127.0.0.1;Database=world;User=root;Password=a123;Option=3;

TADOQuery.SQL.Text := 'SELECT * FROM City',設定 Active := True 即見資料。

方案三:ZeosLib 原生連接 (效能最佳、無 ODBC 相依)

步驟 1:取得與安裝 ZeosLib

步驟 2:編譯設計時套件

  1. Delphi 7 開啟 D:\ZeosLib\packages\delphi7\ZeosDbo.bpg
  2. 專案管理器中依序編譯所有套件,或右鍵 Compile All From Here
  3. 選擇 ZComponentDesign.bpl → 右鍵 Install → 確認元件安裝成功

步驟 3:設定 Library Path

Tools → Environment Options → Library → Library path 新增:

D:\ZeosLib\packages\delphi7\build

若需進入原始碼除錯,另加入:

D:\ZeosLib\src\core
D:\ZeosLib\src\parsesql
D:\ZeosLib\src\plain
D:\ZeosLib\src\dbc
D:\ZeosLib\src\component

步驟 4:表單元件與程式碼

放置:TZConnection、TZQuery、TDataSource、TDBGrid

procedure TForm1.FormCreate(Sender: TObject);
begin
  // 元件關聯
  ZQuery1.Connection := ZConnection1;
  DataSource1.DataSet := ZQuery1;
  DBGrid1.DataSource := DataSource1;

  // 連線參數
  ZConnection1.Protocol := 'mysql';
  ZConnection1.Port := 3306;
  ZConnection1.HostName := '127.0.0.1';
  ZConnection1.User := 'root';
  ZConnection1.Password := 'a123';
  ZConnection1.Database := 'world';
  ZConnection1.Connected := True;

  // 查詢
  ZQuery1.Close;
  ZQuery1.SQL.Text := 'SELECT * FROM City';
  ZQuery1.Active := True;
end;

關鍵部署細節

  • 必須將 MySQL Client DLL (libmysql.dll) 複製至:C:\Windows\System32 或專案輸出目錄
  • 發布程式時須隨附 libmysql.dll

中文亂碼解決

MySQL 預設 UTF-8,Delphi 7 為 ANSI。查詢前設定字符集:

ZQuery1.Close;
ZQuery1.SQL.Text := 'SET NAMES gbk';
ZQuery1.ExecSQL;
ZQuery1.SQL.Text := 'SELECT * FROM City';
ZQuery1.Active := True;

或在 TZConnection.Properties 加入 codepage=gbk。

方案比較總結

方案優點缺點適用場景
ODBC DSN系統層級管理、多應用共用需客戶端配置 DSN、效能稍低企業內部部署、多應用共享資料源
ODBC Driver 字串免 DSN、部署簡單仍經 ODBC 層、相依驅動版本單機/少量部署、快速原型
ZeosLib原生通訊、效能最好、無 ODBC 相依、跨平台需編譯安裝套件、部署需 libmysql.dll正式產品、高效能需求、跨平台專案

其他第三方選項

  • AnyDAC (現 FireDAC 前身):功能強大、商業授權
  • MyDAC / DAC for MySQL:DevArt 出品、原生驅動、商業元件
  1. 上一篇文章: No
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved