TADOConnection 中文使用说明

TADOConnection中文使用说明

(学习大师原创文档,请勿转载)

TADOConnection组件用于建立数据库的连接,该连接可被多个数据集所共享。

TADOConnection 组件提供的功能:

Ø控制数据库的连接

Ø控制服务器的注册

Ø管理事务

Ø为关联的数据集提供数据库连接

ØSQL命令发送到数据库中

Ø从数据库中提取数据

一、TADOConnection 的常用属性

1.   Attributes属性

   此属性用于设置连接的数据库的自动处理事务的行为,它是TXactAttributes类型的集合,包括两个集合元素。

1xaCommitRetaining   表示提交一个事务后自动开始一个新的事务;

2xaAbortRetaining   表示回退一个事务的同时将开始一个新的事务。

2. CommandTimeout属性

   命令超时属性,用于设置一个命令执行时所能等待的最大时间值。

   例如,以下语句将命令执行时间设为120秒。

   ADOConnection1.CommandTimeout:=120;

3. Connected属性

   标识和数据库的连接是否处于激活状态。

4. ConnectionString属性

   ConnectionString(连接字符串)用于指定数据库的连接信息。

连接串的标准调用方式为:

ADOConnection1.ConnectionString := 'Provider=ProviderRef;Remote Server= ServerRef ';

其中,连接串支持的常用参数见下表

参数

说明

Provider

数据提供者名称,例如:MSDASQL.1

Password

登录数据库的口令

Persist Security Info

支持安全登录

User ID

登录数据库用户名

Data Source

数据源名称,数据源的设置需要额外的操作。

建议使用连接串生成器创建连接字符串。

5. ConnectOptions属性

   指定数据库连接是按照同步方式还是异步方式连接。

6. ConnectionTimeout属性

   指定建立连接的最大允许时间。

7. CursorLocation属性

   指定数据库游标是采用客户端模式还是服务器端模式。

8. DefaultDatabase属性

   表明数据源成功连接后,数据库的路径,这是由数据源自动赋值的。

9. IsolationLevel属性

   指定不同事务之间的相互独立的级别。

10.   KeepConnection属性

   指定如果在没有打开数据集的情况下是否仍然保持数据库的连接。

11. LoginPrompt属性

   指定在每次建立连接时是否弹出登录对话框提示用户登录,如果设为False则必须在 ConnectionString中指定登录数据库的用户名和密码。

12. Mode属性

   指定连接对数据库的操作权限

13. InTransactin属性

   表明TADOConnection组件是否处于处理事务的状态中。

14. DataSets属性和DataSetCount属性

   DataSets属性包含当前使用这个连接组件的数据集的列表。

   DataSetCount属性表示该连接组件关联的数据集数目。

二、 TADOConnection 的主要方法

1. BeginTrans方法

   开始启动一个新的事务,必须保证数据连接处于激活状态。

2. Cancel方法

   撤消正在建立的到数据库的连接。

3. CommitTrans方法

   向数据库提交一个事务,提交成功后,在事务中对数据库所作的修改则写入数据库中,同时一个事务也结束。

4. Execute方法

   用来执行SQL命令。

5. GetProcedureNames方法

   获取数据库服务器上的存储过程名称。

6. GetTableNames方法

   获取数据库中的数据表名称。

7. GetFieldNames方法

   获取当前连接的数据库中某个指定的数据表的所有字段名。

8. Open方法

   打开一个连接。

9. RollbackTrans方法

   撤回一个没有全部执行的事务,事务撤回之后,事务中所作的任何修改都不会写入数据库。

10. Close方法

   关闭一个连接。

三、 ADOConnection 的主要事件

   ADOConnection组件的主要事件如表所示。

ADOConnection组件的主要事件

事件

说明

AfterConnect

发生在一个连接建立后

AfterDisconnect

发生在断开连接后

BeforeConnect

发生在连接建立前

BeforeDisconnect

发生在断开连接前

OnBeginTransComplete

发生在开始一个事务时

OnCommitTransComplete

发生在提交事务成功时

OnConnectComplete

发生在连接完成时

OnDisconnect

发生在连接断开时

OnExecuteComplete

发生在一个命令执行后

OnInfoMessage

发生在收到数据库的消息

OnLogin

发生在用户登录数据库的时候

OnRollbackTransComplete

发生在一个事务撤回之后

OnWillConnect

发生在发出一个连接数据请求的时候

OnWillExecute

发生在数据库收到一个 SQL 命令并将要执行的之前


四、 控制服务器的注册

   许多远程数据库服务器包含安全特性以阻止未经授权的访问。通常,这些服务器在允许数据库访问之前要求输入用户名和密码进行注册。

1. ConnectionString中加入用户名和密码。

例:

procedure TForm1.Button2Click(Sender: TObject);

begin

adoconnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=pubs;Data Source=qq-1;User ID=sa;password=123456';

adoconnection1.Open();

end;

2. 将用户名和密码作为Open方法的参数。

例:

ADOConnection1.Open('sa', '123456');

3. 使用OnWillConnect事件

procedure TForm1.ADOConnection1WillConnect(Connection: TADOConnection;

   var ConnectionString, UserID, Password: WideString;

   var ConnectOptions: TConnectOption; var EventStatus: TEventStatus);

begin

   UserID:='sa';

   password:='123456';

end;





联系电话:
020-00000000
联系电话:
020-00000000
联系电话:
020-12345678