RAD Studio VCL Reference
|
Determines whether a connection has been established to the remote source of data.
property Connected: Boolean;
__property Boolean Connected;
Set Connected to true to open the connection. Set Connected to false to terminate the connection.
Setting Connected to true generates a BeforeConnect event, calls the protected DoConnect method to establish the connection, and generates an AfterConnect event. In addition, when setting Connected to true, TCustomConnection may display a login dialog, depending on the value of LoginPrompt.
Setting Connected to false generates a BeforeDisconnect event, calls the protected DoConnect method to drop the connection, and generates an AfterDisconnect event.
When deriving custom connection components from TCustomConnection, override GetConnected to return true when a connection is established, and override DoConnect and DoDisconnect to create and drop the connection.
C++ Examples:
// //This example demostrates the use of ADO for database conectivity. //Example assumes that a TDBGrid is placed on the form. // void __fastcall TForm2::FormCreate(TObject *Sender) { /* Login details */ String UserName = "db_user_name"; String PassWord = "db_pass_word"; String Server = "my.db.server"; /* Connection String */ String ConnString = "Provider=SQLOLEDB.1;Persist Security Info=False;"; ConnString += "User ID=%s;Password=%s;Data Source=%s;Use Procedure for Prepare=1;"; ConnString += "Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;"; ConnString += "Tag with column collation when possible=False"; /* SQL Query */ String SQLStr = "SELECT * FROM customer WHERE customer_id = :AnId;"; /* All ADO variables */ TADOConnection* ADOConn; TADOQuery* ADOQuery; TDataSource* DataSrc; TParameter* Param; /* Create an ADO connection */ ADOConn = new TADOConnection(this); /* Setup the connection string */ ADOConn->ConnectionString = Format(ConnString, ARRAYOFCONST((UserName, PassWord, Server))); /* Disable login prompt */ ADOConn->LoginPrompt = False; try { ADOConn->Connected = true; } catch (EADOError *e) { MessageDlg("Error while connecting", mtError, TMsgDlgButtons() << mbOK, 0); return; } /* Create the query */ ADOQuery = new TADOQuery(this); ADOQuery->Connection = ADOConn; ADOQuery->SQL->Add(SQLStr); /* Update the parameter that was parsed from the SQL query: AnId */ Param = ADOQuery->Parameters->ParamByName("AnId"); Param->DataType = ftInteger; Param->Value = 1; /* Set the query to Prepared - will improve performance */ ADOQuery->Prepared = true; try { ADOQuery->Active = true; } catch (EADOError *e) { MessageDlg("Error while connecting", mtError, TMsgDlgButtons() << mbOK, 0); return; } /* Create the data source */ DataSrc = new TDataSource(this); DataSrc->DataSet = ADOQuery; DataSrc->Enabled = true; /* Finally initilalize the grid */ DBGrid1->DataSource = DataSrc; }
Delphi Examples:
{ This example demostrates the use of ADO for database conectivity. Example assumes that a TDBGrid is placed on the form. } procedure TForm2.FormCreate(Sender: TObject); const { Connection string } ConnString = 'Provider=SQLOLEDB.1;Persist Security Info=False;' + 'User ID=%s;Password=%s;Data Source=%s;Use Procedure for Prepare=1;' + 'Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;'+ 'Tag with column collation when possible=False'; { SQL Query } SQLStr = 'SELECT * FROM customer WHERE customer_id = :AnId;'; { User access } UserName = 'db_user_name'; PassWord = 'db_pass_word'; Server = 'my.db.server'; var ADOConn : TADOConnection; ADOQuery : TADOQuery; DataSrc : TDataSource; Param : TParameter; begin { Create an ADO connection } ADOConn := TADOConnection.Create(Self); { Setup the provider engine } { Setup the connection string } ADOConn.ConnectionString := Format(ConnString, [UserName, PassWord, Server]); { Disable login prompt } ADOConn.LoginPrompt := False; try ADOConn.Connected := True; except on e: EADOError do begin MessageDlg('Error while connecting', mtError, [mbOK], 0); Exit; end; end; { Create the query } ADOQuery := TADOQuery.Create(Self); ADOQuery.Connection := ADOConn; ADOQuery.SQL.Add(SQLStr); { Update the parameter that was parsed from the SQL query: AnId } Param := ADOQuery.Parameters.ParamByName('AnId'); Param.DataType := ftInteger; Param.Value := 1; { Set the query to Prepared - will improve performance } ADOQuery.Prepared := true; try ADOQuery.Active := True; except on e: EADOError do begin MessageDlg('Error while doing query', mtError, [mbOK], 0); Exit; end; end; { Create the data source } DataSrc := TDataSource.Create(Self); DataSrc.DataSet := ADOQuery; DataSrc.Enabled := true; { Finally initilalize the grid } DBGrid1.DataSource := DataSrc; end;
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|