Você está na página 1de 22

:

(ADO (ActiveX Data Objects


5

:
: ) (78824472


80-81

ADO .
.
ADO
Recordset .
ADO :
Connection .

Command .

Recordset Recordset Command.

ADO
. ADO ADO
ADO . .
connection , command , recordest
ADO TADOCnnection , TADODataSet ,TADOcommand
. ADO Field

. ADO
BDE .
ADO BDE .
ADO
BDE ADO
. ADO

.
ADO
ADO BDE ADO 1/2
.

Microsoft SQL Srever .
OLEDB ODBC .
ADO BDE .
TDOConnection TDatabase
BDE TADOTable . TTable TADOStoredproc
Tstoredproc TADODataSet . BDE
TTable TQuery .
TADOcommand .

OLE DB

TADOConnection

TADODataS
et

ADO

.
ADO
.

.

TADOConnection

TADOTable

TADOQuery

TADOStoredProc

TADOCommand


. .
TADO
connection .

SQL .
DDL 1 ) SQL (create table
.
TADOConnection .
)( Stored Procedure
.
DDL

TADOConnection .
) ( SQL
.
.
TADOConnection



. ADO

TADOConnetction .
.
ADO

:
TADOConnetction

TADOConnection
)(Transaction

ADO
. TADOConnetion
TADOConnetction

. ADO Connetion
TADOConnetion . TADOConnetion


Connetion ADO TADOConnetion
.
:
TADOConnetion ConnectionString

Connection

TADOConnection

TADOConnection
ADO .
ADO
TADOConnection
.
.
TADOConnection
.
ADO . TADOConnection

.
ConnectionString


TADOConnection
.
ConnectionString
TADOConnection .
ConnectionString
ConnectionString .

) (
ADO
) Provider (Server
. ConnectionString
.
Connected True .
.
.
:
;ADOConnection1.ConnectionString:=Provider=providername
;Remote Server=server refrence

ConnectionString
; . Provider
.
ConnectionString .
Connection String

; .
TADOConnection
ADO TADOConnection .
Connection ADO TADOConnection
. Object Inspector
Connection
TADOConnection .
Connection .
TADODataSet TADOConnection .
;ADODataSet1.Connection:=ADOConnection1

Connected

DataSet Command
.
Connection
ConnectionObject TADOConnection
Connection ADO .
Connection ADO
.
ConnectionObject
Connection ADO
ADO Connection ADO
.

TADOConnection.Connected
TADOConnection.Open .
;ADOConnection1.Connected:=True
;ADOConnection1.Open


TADOConnection.ConnectionString
.
.
TADOConnection OnWillConnect
OnConnectCompelete
.
TADOConnection
ADO TADOConnection
DataSet Command
.
ADO TADOConnection "
"TADOConnection .
TADOConnection.Connected
TADOConnection.Close .
;ADOConnection1.Connected:=False
;ADOConnection1.Close

TADOConnection :
-1 TADOConnection.OnDisconnect .

-2
(.
-3 TADOConnection .
-4 ADO TADOConnection .
TADOConnection.OnDisconnect

TADOConnection
State TADOConnection
) ( .
State TADOConnection TObjectStates
:

StClosed
TADOConnection .

TADOconnection.Connected False .
ADO TADOConnectin .
StOpen
TADOConnectin .
TADOconnection.Connected True . ADO

TADOconnectio .
StConnecti TADOconnection
ng
TADOconnection.ConnectionString
. Cancel .
StExecuting TADOconnection .
StFetching TADOconnection .

TADOconnection .
.
TADOconnection .
:

Timeout

Logon


TADOconnection.ConnectOption
. ConnectOption
coConnectUnspcified ) (Server

.
ConnectedOption coAsyncConnect .
)
( Server ConnectOption coAsyncConnect
coConnectUnspecified . TADOConnection
Open . Connected True
ADO .
begin
with Adoconnection1 do
begin
close
;connectoptions:=coansyncConnect
;Open
;End
;End

:
begin
with ADOConnection1 do
begin
close:
;connectOptions:=coconnectunspecified
;open
;end
;end

) ( Server
.
TADOConnection.Attributes
) (transaction .
xaCommitRetaining xaAbortRetaining
.
xaCommitRetaining
Attributes :
;)procedure tform1.RetainingCommitsOnButtonClic( sender: tobject
begin
with ADOConnection1 do
begin
;close

if not ( xaCommitRetaining in Attributes)


then Attributes:=( attribute+ [xaCommitRetaining])
open ;
end;
end;
xaCommitsRetaining
Attributes

procedure tform1.RetainingCommitsOnButtonClic( sender: tobject);


begin
with ADOConnection1 do
begin
close;
if not ( xaCommitRetaining in Attributes)
then Attributes:=( attribute - [xaCommitRetaining])
open ;
end;
end;
Timeout
TADOConnection.ConnectionTimeout
. Timeout TADOConnection.CommandTimeout
Connection Timeout

.
Open
. connectionTimeout .
: 10 ConnectionTimeout
with adoconnection1 do
begin
connectionTimeout:= 10 { seconds}
open;
end;

CommandTimeout
Execute .

. ( Exception) ado
. CommandTimeout
: 10 CommandTimeout
with ADOConnection1 do
begin
commandTimeout := 10 { secound} ;

;)] [Execute( DROP TABLE Employee1997,


;End

Login
TADOConnection
OnLogin . Login
OnLogin .
Login .
Login .
. Login
LoginPrompt TADOConnection False
. TADOConnection
TADOConnection.ConnectionString .
Login
TADOConnection.ConnectionString .
:
with ADOConnection1 do
begin
;close
;LoginPrompt:=False
;ConnectionString:=provider:=nameOfYourProvider
;Rimote Server=NameOfYourServer
;)Open( mohammad,SecretWord
;End
Login Open

. :
with ADOConnection1 do
begin
;Close
;LoginPrompt:=False
;ConnectionString:=provider=NameOfYourProvider;RemoteServer
;)Open(mohammad,SecretWord
;End

.

ConnectionString Open
. ) (Provider,Server
.

.


Login
Login
EOleException .
TADOConnection
TADOConnection
) (StoredProcedures
TADOConnection . TADOConnection
ADO
TADOConnection .

:
dataset TADOConnection

command TADOConnection

Dataset TADOConnection
Dataset DataSetCount
dataset TADOConnection dataset .
Dataset DataSetCount
TADODataset . TADOStoredProc Command
TADOConnection Command CommandCount

.
Dataset Dataset .
DstaSet .
3 Dataset
TADOConnection :
;)ShowMessage(ADOConnection.DataSet[3 ].name

Dataset TCustomADODataSet .
) ( typecast
TCustomADODataSet
. TCustomADODataSet SQL
TADOStoredproc .

SQL DataSet DataSet


) ( TypeCast :
with ( ADOConnection1 . DataSet[0] as TADOStoredProc ) do
begin
;SQL.Clear
;)SQL.Add(SELECT * FROM Students
;Open
;End
DataSetCount dataset
TADOConnection .
DataSets dataset
TADOConnection :
var
;I:integer
Begin
For I:=1 to (ADOConnection4.dataSetCount) do
;Adoconnection4.datasets[i].Open
;End
Command TADOConnection
Command CommandCount DataSet
CommandCount TADOCommand
TADOConnection . dataset
TADOConnection DataSet DataSetCount .
Commands Command .
Command .
1 command
TADOConnection :
;Memo1.Lines.Text:=ADOConnection1.Command[1].CommandText
CommandCount Command
TADOConnection .
Commands Command
TADOConnection :
var
I:integer
Begin
For I:= 0 to (ADOConnection1.CommandCount) do
;ADOConnection1.Commands[i].Execute
;End

GetTableNames
. TADOConnection
: TStrings
TADOConnection1.GetTableNames( ListBox1.Items,False);

.

:

PROCEDURE Tform1.button1Click( Sender:Tobject);


Var
SL: Tstrings;
Index:Integer;
Begin
Sl := TstingList.Create;
Try
ADOConnection1.GetTableNames(SL,False);
For index:=0 to ( SL.Count-1) do
Begin
Table1.insert;
Table.fieldByName(Name).AsString:=SL[index];
ADOTable1.Open;
Table1.FieldByName(Records).AsInteger:=ADOTable1.Reco
rdCount;
Table1.Post;
End;
Finally
SL.Free;
ADOTable1.Close;
End;
End;


GetProcedureNames
. TADOConnection
: TString
TADOConnection1.GetProcedureNames(ListBox1.Items);

:
procedure TdataForm.ExecuteProcsButtonClik(Sender:TObject);
var
sl:Tstrings;
index:integer;
begin

;sl:=tstringlist.create
Try
;)Adoconnection1.GetprocedureNames(SL
)If (sl.count>0
Then for index:=0 to ( sl.count-1) do
Begin
;]Adostoredproc1.procedurename:=SL[index
;Adostoredproc1.Execproc
;End
Finally
;Sl.free
;End
;End

)(Transaction
Transaction )
(Transaction . ) (Transaction
ADO TADOConnection .
:


BeginTrans,CommitTrans,RollbackTrans
)(Transaction . BeginTrans
TADOConnection . CommitTrans
.
RollbackTrans
.
InTransaction .

TADOConnection
.
BeginTrans CommitTrans, RollbackTrans
.
onBeginTransComplete BeginTrans
. OnCommitTransComplete
CommitTrans .

OnRollbackTransComplete RollbackTrans

.
Dataset ADO
Dataset ADO dataset BDE
. TADOTable TTable.
ADO ADO
BDE .
Dataset ADO BDE
Tdataset .
1

.
.
DataSet ADO
.
:
TADODataset

TADOTable

TADOQuery

TADOStoredProc

TADODataset
TADODataset
ADO
. CommandText
TADODataset .
TADODataset
Connectionstring Connection .
TADODataset
BDE .
Dataset TdataSource TADODataSet
Tdatasource .
TADODataset .
TdataSet
First,Next,Last Prior .

.
Insert Edit
Borland Database Engine

11

TADODataset . Post
. :
TADOConnection

Dataset

dataset ADO

" " .

TADODataset
. SQL
.
.
SQL CommandText
. Editor CommandText
. ObjectInspector

) (Value CommandText ) (duble click
. CommandText
:
;ADODataset1.CommandTexet : = select * from customer

commandType
.
coimmandType cmdTable .
SQL commandType cmdText
.
commandType cmdUnKnown .
commandType
.
:
;ADODataSet1.CommandType:=cmdText
Open Active True
ADODataSet :
with adodataset do
begin
;connection:=adoconnection1
;commandtype:=cmdtext
;commandtext:=select*from customer
;Open
;End
TADOTable

TADOTable
. TableName
.
TADOTable
ConnectionString connection .
TADOTable
BDE .
Dataset TDataSource TADOTable
TDataSource .
TADOTable .
TDataSet
First,Next,Last Prior .

.
Insert,Edit TADOTable
. Post .
:


TADOTable
.
TADOTable .
TADOTable .
TADOConnection

TableName .
TableName :
;ADOTable.TableName := Oders

TADOConnection
GetTableNames
.

. OnClick
.
TableName TADOTable :

; )procedure tform1.listtablesbuttonclick( sender: tobject


begin
;)adoconnection1.gettablenames(listbox1.items,false
;end
;)procedure tform1.listbox1dublclick( sender: tobject
begin
with adotable1 do
begin
;close
tablename : =( sender as tlistbox).items[(sender as
;]tlistbox).itemindex
;Open
;End
;End
TADOQuery
TADOQuery SQL
. SQL
3
SQL . TADOQuery 2DML DDL
SQL TADOQuery ADO

.
SQL .
SQL . SQL
.
TADOQuery .
TADOQuery
ConnectionString Connection .
TADOQuery
BDE .
DataSet TDataSource TADOQuery
TDataSource .
TADOTable .
TDataSet
First,Last,Next Prior .
21

Data Manipulation Language


-Data Difinition Language


. Insert,Edit
TADOQuery . Post .
SQL

) (Object Inspector
SQL . SQL
TADOQuery .
SQL .
SQL TQuary )
(StringList . SQL
:
with ADOQuery1 do
begin
;Close
With SQL do
Begin
;Clear
;)Add(Select company, state from Customer
Add(Where state=+QuotedStr(HI)+ Order by
;)compamy
;End
;Open
;end
SQL

SQL TADOQuery
:
_1 Open
_2 ExecSQL

SQL Open
.
:
;ADOStoredProc1.SQL.Text := Select * from customer
;ADOStoredProc1.Open

ADOStoredProc1.SQL.Text := Delete from students where


;)(deleted=1
;ADOStoredProc1.ExecSQL
TADOStoredProc


.
ProcedureName .
Connection ConnectionString
.
Procedure BDE .
Open ExecProc .
Open .
:
with ADOStoredProc1 do
begin
ProcedureName:=TlistBox(Sender).Items[ TlistBox(Sender).ItemIn
;] dex
;ExexcProc
;end

:
1.
Cantu Marco Mastering Delphi 5 Sybex Pub. 1999
2.
Martiner William, Herion David, Falino James Building
Distributed Applications With ADO - 2000
3.
Inprise Corporation Delphi 5 Developers Guide
1999
4.
Henderson Ken Database Developres Guide with
Delphi
5.
Pacheco Xavier, Teixeira Steve Delphi 4 Developres
Guide Sams Pub. - 1998

- 5 .6
1379
4 .7
8.

HTTP://www.MicroSoft.com/library/en-us/ado270/htm

Você também pode gostar