作者:吳祐賓
OpenDBX Sourceforge 下載連結
安裝說明:
一、首先是先安裝bpl到RAD Studio裡面
dbxoodbc\lib\{%DelphiVersion%}\dbxoodbc*.bpl
以XE2來看的話,就會是在「dbxoodbc\lib\delphi-2012(16)XE2\win32」(32bit)目錄裡面
二、接下來再把dbxoodbc\lib\dbxoodbc_driver\(%Platform%)\release目錄裡的相關檔案複製到系統路徑
以Win32系統為例,就是把「dbxoodbc\lib\dbxoodbc_driver\win32\release」複製到Delphi安裝目錄裡的bin資料夾下,也就是「{%DELPHI}\Bin」
三、接下來是要註冊 dbxconnections.ini 及 dbxdrivers.ini
說真的,這兩個檔案不是放在特定資料夾中,常常會找不到它們
以我的XE2為例,它們是放置在「c:\users\public\documents\RAD Studio\dbExpress\9.0」目錄中,如果你的電腦沒有的話,可以在底下的機碼中尋找「[HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\DBExpress」
台灣大多數的人都是用SQL Server,所以我們就以它的設定為範本:
===dbxconnections.ini=== ;-------------------------------------------------------------------------------------------------- [dbxoodbc_SS_DirectMode] DriverName=DbxSQLServer GetDriverFunc=getSQLDriverODBCW VendorLib=sqlsrv32.dll;sqlncli10.dll;sqlncli.dll;odbc32.dll Trusted_Connection=No User_Name=name Password=secret BlobSize=-1 RowsetSize=20 OpenOdbc TransIsolation=ReadCommited Trim Char=True Database=? ConnectionString=coCatPrefix=DATABASE;SERVER=? MetaDataPackageLoader=TDBXOpenODBCMetaDataCommandFactoryMSSQL DriverPackageLoader=TDBXDynalinkDriverLoaderOpenOdbc ;-------------------------------------------------------------------------------------------------- ===dbxdrivers.ini=== [Installed Drivers] DbxSQLServer=1 ;-------------------------------------------------------------------------------------------------- [DbxSQLServer] LibraryName=dbxoodbc.dll ProductName=DbxOpenODBC DriverUnit=Dbx34Drv MetaDataPackageLoader=TDBXOpenODBCMetaDataCommandFactoryMSSQL DriverPackageLoader=TDBXDynalinkDriverLoaderOpenOdbc DbxSQLServer TransIsolation=ReadCommited GetDriverFunc=getSQLDriverODBCW VendorLib=sqlsrv32.dll;sqlncli10.dll;sqlncli.dll;odbc32.dll DATABASE=(Database Name) Trusted_Connection=YES User_Name= Password= ConnectionString=coCatPrefix=DATABASE;Server=(Server Name) [DbxSQLServer TransIsolation] DirtyRead=0 ReadCommited=1 RepeatableRead=2 ;--------------------------------------------------------------------------------------------------
四、接下來我們要在bpr裡面,增加一個uses模組項目:
uses DbxXXDrv, ...
五、開啟XE2並建立一個新專案,再drop一個TSQLConnection到裡面,設定
ConnectionName = dbxoodbc_SS_DirectMode
LoginPrompt = False
接下來要注意的是 Params 裡面的項目
============
DriverName=DbxSQLServer
GetDriverFunc=getSQLDriverODBCW
VendorLib=sqlsrv32.dll;sqlncli10.dll;sqlncli.dll;odbc32.dll
Trusted_Connection=No
User_Name=name
Password=secret
BlobSize=-1
RowsetSize=20
OpenOdbc TransIsolation=ReadCommited
Trim Char=True
Database=?
ConnectionString=coCatPrefix=DATABASE;SERVER=?
MetaDataPackageLoader=TDBXOpenODBCMetaDataCommandFactoryMSSQL
DriverPackageLoader=TDBXDynalinkDriverLoaderOpenOdbc
=============
先看紅色區塊
Trusted_Connection是指登入方式:Yes = Windows 驗證
No = SQL Server 驗證
一般都是No,然後設定User_Name和Password。如果設定為Yes,則User_Name和Password的內容要記得清空
再來看綠色區塊中
「DATABASE=?」 問號就是填入要登入的資料庫名稱
「ConnectionString=coCatPrefix=DATABASE;SERVER=?」問號就是要填入要登入的伺服器名稱
在這邊如果是Express版本,則是要在後面加上「\SQLExpress」
辛苦的設定終於完成,接下來就是將TSQLConnection的Connected設為「True」。
連線成功!
=========底下是 Sryang大大 熱情提供更為簡單的連線技巧=========
dbxdrivers.ini
[DbxSQLServer] LibraryName=dbxoodbc.dll ProductName=DbxOpenODBC DriverUnit=Dbx34Drv MetaDataPackageLoader=TDBXOpenODBCMetaDataCommandFactoryMSSQL DriverPackageLoader=TDBXDynalinkDriverLoaderOpenOdbc DbxSQLServer TransIsolation=ReadCommited GetDriverFunc=getSQLDriverODBCW VendorLib=sqlsrv32.dll;sqlncli10.dll;sqlncli.dll;odbc32.dll Database=(database name) Trusted_Connection=YES User_Name= Password= ConnectionString=coCatPrefix=DATABASE;SERVER=(server name)
IDE 中 Data Explorer 的使用
利用"Add New Connection "新建一個連線設定
建立後修改參數,如下圖
這個畫面不用填資料,按 Advanced 按鈕
(Test Connection 不可用,會有錯誤訊息,不過不用理他)
填入 Database
在 connectionstring 項目內 "SERVER=" 後面輸入要登入的資料庫伺服器
設定好的連線,可以直接拖曳到 Form 或者 DataModule 裡面
將 Connected 屬性設定為 True 就可連線
沒有留言:
張貼留言