Delphi 2010安裝及使用UniDAC 4.0 .


Delphi 2010安裝及使用UniDAC 4.0 .

分類: unidac 77人閱讀 評論(0) 收藏 舉報

UniDAC是一個功能強大的非可視化跨數據庫的數據訪問組件,可用於Delphi,Delphi for .NET,C++Builder,and Lazarus (Free Pascal)。它提供了對流行數據庫服務器的統一訪問,像Oracle,Microsoft SQL Server,MySQL,InterBase,Firebird,PostgreSQL,SQLite,DB2,Microsoft Access,Sybase Advantage Database Server,Sybase Adaptive Server Enterprise,和其他數據庫(使用ODBC驅動)。        
        從網上下載到UniDAC 4.0的源碼版本,安裝過程如下:
        1.進入"...\unidac40src\Source\Delphi14"文件夾,找到"Make.bat"文件,打開並修改IDE目錄路徑,如下:

set IdeDir="%PROGRAMFILES%\Embarcadero\RAD Studio\7.0 
call ..\Make.bat Delphi 14 WIN32 

        因為我這里Delphi 2010不是安裝在默認位置,故修改如下:

set IdeDir="D:\Program Files\Embarcadero\RAD Studio\7.0 
call ..\Make.bat Delphi 14 WIN32 

        2.執行"Make.bat"文件,自動執行一系列操作后,到"...\unidac40src\Bin\Delphi14"目錄下,可發現庫已經生成完畢;
        3.運行Delphi 2010,菜單→"Tools"→"Options"→"Environment Options"→"Environment Variables",添加"...\unidac40src\Bin\Delphi14"完整路徑到"PATH"環境變量;
        4.菜單→"Component"->"Install Packages...","Add"添加"...\unidac40src\Bin\Delphi14"目錄下的"dclunidac140.bpl";
        5.菜單→"Tools"→"Options"→"Environment Options"→"Delphi Options"→"Library - Win32",在"Library Path"添加"...\unidac40src\Lib\Delphi14"路徑;
        6.此時,已可以使用UniDAC連接數據庫了。若是需要鏈接查看源代碼,將"...\unidac40src\Source"路徑也添加到"Library Path"。
        
        測試連接MySql數據庫:
        1.新建一個應用程序,在面板上拖動TUniConnection、TMySQLUniProvider、TUniQuery、TUniDataSource、TDBGrid到窗體上,如下圖所示:

        2.右鍵TUniConnection,選擇"Connection Editor...",填入數據庫連接參數,如下圖所示:
 

        3.因為MySql一般設置字符集為UTF-8,而Delphi 2010工程字符集是Unicode,在"Options"頁面,設置"UseUnicode"為True,這可以通知服務器,客戶端和服務器雙方之間的所有數據都將通過UTF-8編碼,設置這個選項會轉換所有的TStringField字段類型到TWideStringField字段類型,使得幾乎所有的語言符號都可以正確工作,但另一方面,也引起工作延遲。

        4.關聯其他項,在TUniQuery的SQL里面寫"select * from city",設置Active為True,運行程序,可以看到符號都可以正常顯示,如下圖所示:

        代碼實現的方式如下:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  procedure TForm1.FormCreate(Sender: TObject); 
begin 
  UniQuery1.Connection := UniConnection1; 
  UniDataSource1.DataSet := UniQuery1; 
  DBGrid1.DataSource := UniDataSource1; 
  with UniConnection1 do 
  begin 
    ProviderName := 'MySQL'
    Username := 'root'
    Password := '123'
    Server := '192.168.82.201'
    Database := 'world'
    Port := 3306
    SpecificOptions.Values['UseUnicode'] := 'True'
    try 
      Connect; 
      UniQuery1.Close; 
      UniQuery1.SQL.Text := 'select * from city'
      UniQuery1.Open; 
    except 
 
    end
  end
end


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM