程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi 7如何連接MySql 5.5.15

Delphi 7如何連接MySql 5.5.15

編輯:Delphi

系統環境:Windows XP SP3

軟件環境:Delphi 7 、mysql-installer-5.5.15.0

1.ODBC方式

必須要先有MySql的ODBC驅動,我下載的是全安裝版,包括MySql服務器、各種所支持的連接、工作台、示例數據庫、文檔,若是無ODBC驅動,可以到官網http://dev.mysql.com/downloads/connector/odbc/下載。

①數據源方式

首先,確認安裝了MySql的ODBC驅動,打開“控制面板”→“管理工具”→“數據源”,切換到“驅動程序”頁,查看“MySql ODBC 5.1 Driver",如下圖所示:

切換到"系統DSN"→"添加"→"MySql ODBC 5.1 Driver",如下圖所示:

彈出MySql數據源配置,數據源名稱隨意,TCP/IP Server為數據庫地址,User用戶名,Password密碼,Database連接的數據庫,點"Test"進行測試連接,如下圖所示:

點擊"OK"後,即可看到新增加了一個數據源。打開Delphi 7,在窗體上放置TADOConnection、TADOQuery、TDataSource和TDBGrid,相互之間關聯,配置TADOConnection的連接字符串,"提供程序"選擇"Microsoft OLE DB Provider for ODBC Drivers",下一步,選擇"使用數據源名稱",下拉選擇剛才配置的數據源,其他的不用再填寫,測試連接,如下圖所示:

②驅動方式

跟上面一樣,先確認安裝MySql的ODBC驅動。打開Delphi 7,在窗體上放置TADOConnection、TADOQuery、TDataSource和TDBGrid,相互之間關聯,配置TADOConnection的連接字符串,為以下內容: 1   Driver={MySQL ODBC 5.1 Driver}; Server=127.0.0.1; Database=world; User=root; Password=a123; Option=3;

在TADOQuery寫查詢語句,設置Active為True,數據都顯示在表格上,如下圖所示:

2.ZeosLib方式

ZeosLib是一個用於Borland開發工具的數據庫中間件,包括Delphi、C++ Builder和Kylix。從http://sourceforge.net/projects/zeoslib/files/下載"ZEOSDBO-6.6.6-stable"版本,解壓到文件夾。打開Delphi 7,加載工程項目包"...\ZEOSDBO\packages\delphi7\ZeosDbo.bpg",按順序編譯,或者右鍵選擇"Compile All From Here",如下圖所示:

編譯完成後,再選擇"ZComponentDesign.bpl",右鍵選擇"Install",安裝組件成功,彈出如下對話框:

再添加所編譯完成的目錄,即"...\ZEOSDBO\packages\delphi7\build",菜單"Tools"→"Environment Options"→"Library"→"Library path",添加此目錄。另外,若需要在編寫代碼時,能進入ZeosLib源代碼的話,需要添加源代碼文件夾目錄,包括:"...\ZEOSDBO\src\core"、"...\ZEOSDBO\src\parsesql"、"...\ZEOSDBO\src\plain"、"...\ZEOSDBO\src\dbc"和"...\ZEOSDBO\src\component"(注意:會在這些目錄下再次編譯單元文件)。

新建一個應用程序,在窗體上放置TZConnection、TZQuery、TDataSource和TDBGrid,在窗體創建函數裡,寫入以下代碼:

procedure TForm1.FormCreate(Sender: TObject);   
begin
  //---------------互相關聯------------------------   
  zqry1.Connection := zcon1;   
  ds1.DataSet := zqry1;   
  dbgrd1.DataSource := ds1;   
  //---------------設置參數------------------------   
  zcon1.Protocol := 'mysql';   
  zcon1.Port := 3306;   
  zcon1.HostName := '127.0.0.1';   
  zcon1.User := 'root';   
  zcon1.Password := 'a123';   
  zcon1.Database := 'world';   
  zcon1.Connected := True;   
  //---------------查詢顯示------------------------   
  zqry1.Close;   
  zqry1.SQL.Text := 'SELECT * FROM City';   
  zqry1.Active := True;   
end;

當然手動在設計器上進行設置也可以。因為這裡連接的是MySql數據庫,需要拷貝MySql數據庫客戶端所需的DLL(即:libmysql.dll,這裡我安裝的是在"...\MySQL\MySQL Server 5.5\lib"裡面)復制到Windows系統目錄(通常是"C:\WINDOWS\system32")或者工程目錄下。程序如下圖所示:

當程序發給別人使用時,需要連同"libmysql.dll"一起發送。若是顯示的數據有亂碼,這是因為MySQl數據庫默認使用UTF-8字符集,則先在查詢之前,設置字符集,如下代碼所示:

begin
  zqry1.Close;   
  zqry1.SQL.Text := 'set names gbk';   
  zqry1.ExecSQL;   
  zqry1.SQL.Text := 'select * from city';   
  zqry1.Active := True;   
end;

或者在TZConnection的Properties屬性添加"codepage=gbk"。

3.其他方式

另外,還有其他的第三方控件可以連接MySql等其他數據庫,如:AnyDAC、MyDAC 、DAC for MySQL等等。

Author:csdn博客 無幻

    No
  1. 下一頁:
Copyright © 程式師世界 All Rights Reserved