Microsoft Access Database Example

    

 


{This script shows opening a MS Access file and performing}

{delete, insert and select query's on the database table "Customers"}

{Could be used to either write data from Ostendo to Access for a}

{custom application or import data from a PDA or other device using Access}

 

var

ADO: TADOConnection;

ADOQry: TADOQuery;

begin

ADO := TADOConnection.Create(nil);

ADOQry := TADOQuery.Create(nil);

try

   ADO.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + OstendoPath + 'accessdemo.mdb';

   ADO.LoginPrompt := False;

   ADO.Connected := true;

   ADOQry.Connection := ADO;

   {delete sql}

   ADOQry.SQL.Add('delete from Customers');

   ADOQry.ExecSQL;

   ADOQry.Close;

   ADOQry.SQL.Clear;

   {Insert sql}

   ADOQry.SQL.Add('insert into Customers (CompanyName,EmailAddress) values (''Test Company'', ''test@tc.test'')');

   ADOQry.ExecSQL;

   ADOQry.Close;

   ADOQry.SQL.Clear;

   {Select sql}

   ADOQry.SQL.Add('Select * from Customers');

   ADOQry.Open;

   showmessage(ADOQry.FieldByName('CompanyName').AsString

    + ' - ' + ADOQry.FieldByName('EmailAddress').AsString);

   ADOQry.close;

   ADO.Connected := false;

finally

   ADOQry.Free;

   ADO.Free;

end;

end.

 

{Read table from ostendo loop and save to text file}

var

OSTQry: TpFIBQuery;

CustList: TStringList;

begin

OSTQry := TpFIBQuery.Create(nil);

CustList := TStringList.Create;

try

   OSTQry.Database := OstendoDB;

   OSTQry.SQL.Add('select CUSTOMER from CUSTOMERMASTER');

   OSTQry.ExecQuery;

   while not OSTQry.Eof do

   begin

     CustList.Add(OSTQry.FN('CUSTOMER').AsString);

     OSTQry.Next;

   end;

   CustList.SaveToFile(OstendoPath + 'customers.txt');

   run(OstendoPath + 'customers.txt');

finally

   CustList.Free;

   OSTQry.Free;

end;

end.