程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++ Builder 2007中使用dbExpress開發firebird數據庫

C++ Builder 2007中使用dbExpress開發firebird數據庫

編輯:關於C++

這幾天剛從cb6升級到cb2007,有個自己寫的程序使用dbExpress開發firebird數據庫,連接不上,在網上找了一些資料,自己又摸索了一些cb2007的新功能,介紹給大家。

首先聲明,本人不是專職程序員,編程只是愛好,以下方法並不是我最先發現的,我只是整理一下,並給那些還在cb6下開發的兄弟介紹點cb2007的新東西。為了迎接cb2009,呵呵。

圖片點擊放大。

1、 首先修改dbExpress的ini配置默認是C:\Documents and Settings\All Users\Documents\RAD Studio\dbExpress

dbxconnections.ini增加的內容

FBCONNECTION是firebird網絡版連接

FB_ECONNECTION是firebird嵌入版連接

[FB_ECONNECTION]
DriverName=Firebird_E
Database=database.fdb
RoleName=RoleName
User_Name=SYSDBA
Password=masterkey
ServerCharSet=
SQLDialect=3
ErrorResourceFile=
LocaleCode=0000
BlobSize=-1
CommitRetain=True
WaitOnLocks=True
Interbase TransIsolation=ReadCommited
Trim Char=False

[FBCONNECTION]
drivername=Firebird
Database=database.fdb
rolename=RoleName
User_Name=SYSDBA

Password=masterkey

sqldialect=3
localecode=0000
blobsize=-1
commitretain=True
waitonlocks=True
interbase transisolation=ReadCommited
trim char=False

dbxdrivers.ini增加的內容

[Installed Drivers]
DB2=1
Firebird=1 //網絡版
Firebird_E=1 // 嵌入版
Interbase=1
MySQL=1
Oracle=1
Informix=1
MSSQL=1
ASA=1
ASE=1
BlackfishSQL=1
DBXTrace=1
DBXPool=1

// 嵌入版
[Firebird_E]
GetDriverFunc=getSQLDriverINTERBASE
LibraryName=dbxint30.dll
VendorLib=fbembed.dll
Database=database.fdb
RoleName=RoleName
User_Name=SYSDBA
Password=masterkey
ServerCharSet=
SQLDialect=3
BlobSize=-1
CommitRetain=True
WaitOnLocks=True
ErrorResourceFile=
LocaleCode=0000
Interbase TransIsolation=ReadCommited
Trim Char=False

 //網絡版
[Firebird]
GetDriverFunc=getSQLDriverINTERBASE
LibraryName=dbxint30.dll
VendorLib=fbclient.dll
Database=database.fdb
RoleName=RoleName
User_Name=SYSDBA
Password=masterkey
ServerCharSet=
SQLDialect=3
BlobSize=-1
CommitRetain=True
WaitOnLocks=True
ErrorResourceFile=
LocaleCode=0000
Interbase TransIsolation=ReadCommited
Trim Char=False

[Firebird_E TransIsolation]
ReadCommited=1
RepeatableRead=2

[Firebird TransIsolation]
ReadCommited=1
RepeatableRead=2

2、為了方便復制fbclient.dll到system32目錄下,fbclient.dll例如在:

3、添加firebird例子數據庫EMPLOYEE.FDB到數據庫別名中,例如

4、用記事本打開aliases.conf,添加 例如:EMPLOYEE=D:\CodeGear\Database\Firebird\examples\empbuild\EMPLOYEE.FDB

5、新建個vcl程序,界面如下

6、組件連接順序

DBGrid1->DataSource->   DataSource1->DataSet->   ClientDataSet1->ProviderName->   DataSetProvider1->DataSet->

SQLQuery1->SQLConnention->    SQLConnection1.

7、點SQLConnection1的ConnectionName選FBCONNECTION,設定如下:

8、點DataSetProvider1,主要是opyions中的poAllowMultiRecordUpdates,poAllowCommandText,poUseQuoteChar 為true

設定如下:

9、點Data Explorer標簽選FIREBIRD,FBCONNECTION右鍵modify connection,database name為EMPLOYEE,

user name 為 sysdba, password 為 masterkey

10、點FBCONNECTION->sql wondow,選sql window雙擊的CUSTOMER,sql語句出現在下面的窗口,復制到

ClientDataSet1屬性commendtext屬性,ClientDataSet1的Active屬性為true;

11、retrieve data from table 表的數據浏覽

12、alter table 表的字段浏覽

13、drop table刪除表,慎用!!!!

14、添加ButtonUpdate的OnClick事件

void __fastcall TForm3::ButtonUpdateClick(TObject *Sender

  )

   { ClientDataSet1->ApplyUpdates(0);}

15、F9運行,在DBGrid1中修改數據後點ButtonUpdate按鈕更新數據。

16、程序手寫的代碼只有一行

ClientDataSet1->ApplyUpdates(0);

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