Einzelnen Beitrag anzeigen

Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#13

Re: XP schnelle DB ohne Treiber ?

  Alt 21. Jan 2004, 13:17
Erst einmal wäre es ganz gut für dich ein Datenbanktool zu haben
wie etwa MS Enterprise Manager oder DbaMgr2k. Weil du zur Verbindung mit der DB
ein ConnectionString brauchst. Ich weiss nciht wie man sonst einen ConnectionString holen kann.

Ein ConncetionString sieht in etwa so aus:
'Provider=SQLOLEDB.1;Password=deinDBPassword;Persi st Security Info=True;User ID=sa;Initial Catalog=Test;Data Source=deinRechnerName'

zur Verbindung mit der DB zB so:
Delphi-Quellcode:
procedure TForm1.btnConnectClick(Sender: TObject);
begin
   fDBConnector := TADOConnection.Create(nil);
  try
    fDBConnector.LoginPrompt := False;
    fDBConnector.ConnectionString := 'Provider=SQLOLEDB.1;Password=deinDBPassword;Persist Security Info=True;User ID=sa;Initial Catalog=Test;Data Source=deinRechnerName';
    fDBConnector.Connected := True;
    lblConnect.Caption := 'Connected';
  except
   Showmessage('Could not connect on database'+#13#10+'please try again');
  end;
end;

du kannst TADOQuery un/oder TADOTable nehmen, ich mische oft.
z.B:

Delphi-Quellcode:
{TADOQuery}
procedure TForm1.GetValuesWithQuery();
var lQuery: TADOQuery;
begin
   lQuery := TADOQuery.Create(nil);
   try
     try
        lQuery.SQL.Text := 'SELECT '+ eTableColumn.Text{ein Edit Feld} +' FROM '+ eTableName.Text{ein Edit Feld};
        lQuery.Connection := fDBConnector;
        lQuery.Open;
     except
        ShowMessage('Table and/or column not exists in this database');
     end;
     while not lQuery.Eof do
     begin
        myMemo.Lines.Add(lQuery.fieldbyname(eTableColumn.Text{ein Edit Feld}).AsString);
        lQuery.Next;
     end;
   finally
     lQuery.Free;
   end;
end;
oder mit:

Delphi-Quellcode:
{TADOTable}
procedure TForm1.GetValuesWithTable();
var lTable : TADOTable;
begin
   lTable := TADOTable.Create(nil);
   try
    lTable.Connection := fDBConnector;
    lTable.TableName := eTableName.Text{ein Edit Feld};
    lTable.Open;
    while not lTable.Eof do
    begin
       myMemo.Lines.Add(lTable.fieldbyname(eTableColumn.Text).AsString);
       lTable.Next;
    end;
   finally
     lTable.Free;
   end;
end;
Ich hoffe das hilft erts mal weiter
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat