这些驱动程序在Windows和Linux下都能使用(Windows下为动态连接库.DLL,而在Linux下为共享对象.so文件)。 这种API 驱动,减少了数据库引擎需要的额外开销。
标准的dbExpress数据库应用是不使用数据缓存的,由于保持核心运行时数据库访问层的简单和轻便。所以,dbExpress提供了高性能的数据库连接,运行速度很高。但是,不用数据缓存将无法修改数据,而且,指针的移动也是单向的。为了能够修改数据,dbExpress也提供了一种使用数据缓存的控件,当然这无疑也会影响到效率。
目前在dbExpress能够应用的数据库有Qracle、MySQL、DB2和InterBase,这里以InterBase 数据库为例。
一、单向的数据连接
实例数据库为Delphi提供的Employee.gdb。
1)加入 TSQLConnection
属性:
LoginPrompt=False 不用用户名和密码显示
DirverName=InterBase 驱动程序名
ConnectionName=IBLoca 默认数据库(Database.gdb)
Params 点对话框出现信息表,修改数据库的名字Employee.gdb
Connected=true 如果连接正确,将可以顺利的为true;
2)加入 TSQLDataset
属性:
SQLConnection=SQLConnection名字
CommandType=ctTable 用表名连接
CommandText=表名
Active=true 如果正确,将可以为true;
3)加入 TDataSource
属性:
DataSet=SQLDataSet名字
4)加入数据绑定控件,由于不用缓存,所以不能用DBGrid,这里只用简单的DBEdit。
注意属性:
DataSource=DataSource名字
DataField=字段名
5)注意,SQLDataset移动指针只有两个方法
SQLdataset1.Next;
SQLdataset1.First;
这就可以运行了。
二、可以修改的数据连接
做一个主从结构的数据显示,要求从表是可以修改的,而且要用DBGrid,所以,这里要用一个新的控件来联系:
TSQLClientDataSet
和TSQLDataset不同TSQLClientDataSet是使用数据缓冲区的,所以,用它连接数据源可以修改,也可以用DBGrid显示。
和上面方法相同,加入TSQLConnection作数据源。
属性:
LoginPrompt=False 不用用户名和密码显示
DirverName=InterBase 驱动程序名
ConnectionName=IBLoca 默认数据库(Database.gdb)
Params 点对话框出现信息表,改数据库名:Employee.gdb
Connected=true 如果连接正确,将可以顺利的为true;
1)做主表
加入 TSQLDataset
属性:
SQLConnection=SQLConnection1
CommandType=ctTable 用表名连接
CommandText=PROJECT (这是在Employee.gdb内的一个表)
Active=true 如果正确,将可以为true;
加入 TDataSource
属性:
DataSet=SQLDataSet1
加入数据绑定控件两个DBEdit,显示字段分别为PROJ_ID和PROJ_NAME。
用同样的方法作两个指针移动的Button。
2)做从表
加入TSQLClientDataSet
属性:
SQLConnection=SQLConnection1
CommandType=ctTable 用表名连接
CommandText=PROJ_DEPT_BUDGET (这是在Employee.gdb内的另一个表)
Active=true (激活)
做主从连接
MasterSource=DataSource1
MasterFierds=PROJ_ID (连接字段)
加入 TDataSource
属性:
Name=DataSource2
DataSet=SQLClientDataSet1
加入DBGrid,与DataSource2连接。
这就完成了一个主从表制作,试验一下,可以发现从表是可以修改的。
仔细研究一下这个过程,归纳出设计的一般方法。一般来说,dbExpress主要在网络中使用,特别是WebSnap 快速网络开发,将会给dbExpress 以很大的施展空间。