Delphi 7 ADO使用

本文详细介绍了Delphi 7中ADO组件的使用,包括TADO Connection组件的功能,如连接数据库、管理事务、控制数据库连接等,并列举了其主要属性、方法和事件。接着,讨论了TADO Command组件,用于执行SQL命令和存储过程,以及TADO Dataset、TADO Table、TADO Query和TADO Stored Proc组件的用途和特性。最后,提到了TRDS Connection组件在多层应用中的作用。
摘要由CSDN通过智能技术生成

Delphi7 ADO面板上的控件简介

一、 TADO Connection组件
该组件用于建立数据库的连接。ADO的数据源组件和命令组件可以通过该组件运行命令及数据库中提取数据等。
该组件用于建立数据库的连接,该连接可被多个数据集所共享,但是并不是应用程序中必须的,因为ADO数据集及命令组件通过设置其Connection String属性,可以直接连接到数据库。但是如果多个数据集使用相同的数据库连接时,则使用TADO Connection就有一定的优势,因为不必为每个数据集都单独建立数据库的连接,同时也减少了资源的消耗,并且可以建立跨越多个数据集的事务。一个事务(transaction)是数据库操作的一个阶段,用户对数据库的修改都保存在本地计算机的内存中,只有提交一个事务后,才能将修改的内容提交到数据库中。如果选择了回滚事务,则所有的修改将被取消,而不会提交到数据库中。

? TADO Connection
组件提供如下功能:
控件数据库的连接
控制服务器的注册
管理事务
为关联的数据集提供数据库连接
SQL命令发送到数据库中
获得数据库的原数据(metadata

? TADO Connection
的常用属性
1) Attributes
   
此属性用于设置连接的数据库的自动处理的行为,它是Txact Attributes
类型的集合,包括两个集合元素:
I. Xa Commit Retaining
:提交一个事务后自动开始一个新的事务。
II. Xa Abort Retaining
回退一个事务的同时将开始一个新的事务。
2) Command Timeout
   
连接超时属性,用于设置一个命令执行时所能等待的最大时间值。以秒为计量单位。缺省值为30秒,即连接命令等待了30秒之后还没有被执行,系统就放弃这个命令。
3) Connected
   
标识和数据库的连接是否处于激活状态。
用户可以查询Connected属性的值来判断数据库的连接状态。如果该属性为true,则表明数据库处于连接状态;为false,则当前数据库连接关闭。
4) Connection String
   
连字符串用于指定数据库的连接信息。连字符串的标准调用方为:ADOConnection1.ConnectionString:='Provider=ProviderRet; Remote Server=Server Ret';
其中,连接串支持的常用参数如下:
数据库连接参数及说明
        
参数 说明
Provider 
数据提供者名称,例如MSDASQL.1
Password 
登录数据库的口令
        
参数 说明
Persist Security  
支持安全登录
User ID 
登录数据库用户
    Data Source 
数据源名称、数据源的设置需要额外的操作
设置成功之后,用户就可以将属性Connected设置为True,如果没有任何提示信息,说明数据库已经成功连接,此时,属性Default Patabase就被赋值为连接所指定的数据库的路径。
 5) Connect Options
   
指定数据库连接是按照同步方式还是异步方式。类型Tconnectoption包含两个值:
v coConnect Unspecified
:数据库连接采用同步方式连接。
v coAsync Connect
:异步方式连接数据库。当服务器负载很重的时候,这种连接方式很有用。引用这种连接方式,在第一次建立连接的时候,应用程序不能获得全部的数据。
 6) Cursor Location
    
指定数据库指针是指向客户端还是服务器端。类型Tcursor Location包含两个值:
v cluse Server
:使用服务器端的数据库指针,适用于数据量大的数据集。
v cluse Client
:使用客户端的数据指针的时候,数据将被下载到本地计算机上,并在本地进行操作。
7) Default Database
   
表明数据源成功连接后,这是由数据源自动赋值的。
8) IsoLation Level
指定不同事务之间的相互独立的级别,事务实际上是对数据库的一系列操作的集合。事务具有整体性,如果事务中的某一个步骤不能正确执行,则整个事务都不会执行。由于数据库服务器可以同时支持多个连接,来自不同连接的事务有可能在同一时刻对同一个数据进行操作,这就有可能造成数据不一致性。为防止这种情况出现,ADO引入了事务独立级来确定不同事务之间的相互关系。设定事务独立级之后并调用Begin Trans方法后,新的事务独立级别将生效。
TISolationLevel
共包含9种常量值:如下:
TISolationLevel
常量及说明
常量参数 说明
ilUnspecified 
使用默认的独立级别,没有其它的独立级别
ilChaos 
来自更高独立级别的事务对数据的改变不能被当前的事务覆盖
ilReadUncommitled 
当前事务可以读取其他事务未提交的数据
ilBrowse 
当前事务可以读取其他事务未提交的数据
ilcursorStability 
事务提交后数据才能被读取
ilReadCommitled 
事务提交后数据才能被读取
ilRepeatable Read 
不能读取其它事务的数据,执行Requery操作可以获得这些数据
ilSerializable 
从其他事务中获取事务的独立级别
ilIsolated 
从其他事务中获取事务的独立级别

    这些常量的定义在Microsoft Data Access SDK中有详尽的说明,需要进一步了解可以查询微软的SDK文档。
9) Keep Connection
   
指定如果在没有打开数据集的情况下是否仍然保持数据的连接。
   
濒繁地打开和关闭数据库的操作将会影响系统的性能,特别在网络上,会在一定程度上增加网络的负载。这个属性设置数据源始终处于连接状态,可以显著提高程序的性能。
10) Login Prompt
   
指定在每次建立连接时是否弹出登录对话框提示用户登录。如果设为False,则必须在Connection String中指定登录数据库的用户和密码。
11) Mode
 
指定连接对数据库的操作权限,这种连接模式的值如下:
连接模式参数及说明
参数 说明
cmUnknown 
未指定数据库操作权限或无法确定
cmRead 
对数据库只能读操作
cmWrite 
对数据库只能写操作
cmRead Write 
对数据库可读写操作
cmShare Deny Read 
禁止其他用户对数据库读操作
cmShare Deny Write 
禁止其他用户对数据库写操作
cmShare Exclusive 
禁止其他用户对打开数据连接
cmShare Deng None 
禁止其他用户对数据库任何操作

? ADO Connection
的主要方法:
1) Begin Trans
   
开始启动一个新的事务,必须保证数据连接处于激活状态。
2) Cancel
   
关闭于数据库的连接。
3) Commit Trans
   
向数据库提交一个事务。提交成功后,再事务中对数据库所作的修改则写入数据库中,同时一个事务也结束。
4)Execute(constCommandText:Widestring;VarRecordsAffected;Executeoptions:TexcuteOptions=[eoExecuteNoRecords]);
执行一个Command Text类型的SQL命令,其中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值