Delphi数据库编程之BDE组件一(已不常用)

来源:互联网 发布:写日志的软件 编辑:程序博客网 时间:2024/06/07 02:11

这里,我们来介绍BDE组件中常用的几个组件:

1.TTable组件

使用TTable组件可通过BDE访问单个表的数据,其提供了对底层数据库的每一条记录和字段的直接访问。下面介绍几个重要的属性

1.1 DataSource

当TTable组件作为主从表体系中的从表时,通过这个属性可以获得和主表相关联的TDataSource组件。

1.2 Exists

判断底层的数据库表是否存在。

1.3 IndexDefs

一个关于表的索引定义的列表。列表中的每一个元素都是TindexDef类型的对象,描述了表的一个可用的索引。

1.4 KeyExclusive

记录域是一个表中记录的子集,可用上界和下界标明记录域的范围,以便从记录中筛选子集。

1.5 KeyFieldCount

用来确定部分键搜索时所用的字段。

1.6 MasterFields

在主从表体系中,MasterSource属性指出作为主表的数据源,而MasterFields指出联系字段。

1.7 StoreDefs

若StoreDefs为真,则表的索引和字段定义就与窗体或数据模块一同存储。默认为假。

1.8 TableType

用来确定表的类型(但对于远程数据库服务器而言,没有意义)

1.9 CachedUpdates

使用CachedUpdates属性可以打开或关闭对TTable组件应用缓存更新。当本属性为真时,对数据的更新如回传更新、插入新纪录或删除记录将会被存储在客户机内部的缓存中,等到修改完成后,在使用事务将所有缓存的对数据库的修改回传到底层数据库。这个属性主要用在开发两层数据库应用程序的客户端程序中。(但可能会遇到数据一致性问题)

1.10 Filter

使用Filter确定TTable组件的过滤器字符串

1.11 FilterOptions

确定当过滤字符串和字符字段时,是否大小写敏感。

1.12 Bof、Eof

Bof

确定数据集中的第一条记录是否是活动的。

Eof

确定数据集中最后一条记录是否是活动的。

1.13 FieldDefs

其表示为一个列表,列表中的元素与表中的字段是一一对应的。

1.14 FieldByName

以字段名称的方式访问字段。

1.15 SetRangeStart、SetRangeEnd、ApplyRange

用来设置数据域的上界、下界和对TTable组件应用数据域。

1.16 LockTable

用于将表锁定(LtReadLock:不能读被锁定的表;LtWriteLock:不能写被锁定的表)

 

2.TQuery 组件

TQuery组件用来以SQL语句的形式动态地访问一个或多个表的数据。

2.1 SQL

用来存放SQL语句,当调用TQuery组件的ExecSQL方法和Open方法时,或将TQuery组件的Active属性设置为真时,这些SQL语句就会被执行。例如:

Query1.Close;Query1.SQL.Clear;Query1.SQL.Add('Delete from Country where Name = ''Argentina''');Query1.ExecSQL;


2.2  SQLBinary

指向代表SQL查询语言或结果集的二进制数据流的指针(在程序中一般不能访问)。该数据流用于TQuery组件和BDE的通信,由系统使用

 

2.3 Text

用来检查实际传递给BDE的SQL语句的内容(只读)。

 

2.4 Params

用于在参数化SQL查询中给SQL语句传递参数。(Params是一个以0开始的TParams数组)。例如

Query2.SQL.Clear;Query2.SQL.Add('INSERT INTO COUNTRY (NAME, CAPITAL, POPULATION)');Query2.SQL.Add('VALUES (:Name, :Capital, :Population)');Query2.Params[0].AsString := 'Liechtenstein';Query2.Params[1].AsString := 'Vaduz';Query2.Params[2].AsInteger := 420000;Query2.ExecSQL;


2.5 DataSource

with Query2 do beginDataSource := DataSource1;ParamByName('CompanyName').AsString := Edit1.Text;Prepare;ExecSQL;end;


2.6 ParamCheck

用来确定在程序运行时,若修改了TQuery组件,是否清空并重新生成Params属性。

 

2.7 ExecSQL

用来执行TQuery组件的SQL属性中的SQL语句。

 

2.8 ParamByName

本方法用来按名字访问参数。

 

2.9 Active

用来判断DataSet数据集是否打开。

 

3. TStoreProc组件

TStoreProc组件用于在基于BDE的数据库应用程序中访问数据库服务器端的存储过程。

3.1 StroedProcName

指出了存储过程的名字。例如:

StoredProcx.Params[0].AsString := Edit.Text;StoredProcx.Prepare;StoredProcx.ExecProc;


3.2 ParamBindMode

用于确定将参数传递给数据库服务器时的顺序:1.pbByName(按名匹配);2.pbByNumber(按次序从左到右匹配)