Hallo stho,
ich frag mich immer wofür dieses ominöse DataSet überhaupt gut sein sollte. Wenn ich irgendwelche Zugriffe auf Datenbankdaten habe, löse ich das mit der
Query. Also ungefähr so:
ADOQuery1.SQL.Text:='SELECT SUM(Preis) AS Summe FROM Finanzen';
Unter D2006 mußt Du da allerdings ein paar Niggeligkeiten beachten.
Ich empfehle Dir Deine Abfragen, bzw. alles was mit der
DB zu tun hat, in ein DM (TDataModule) auszulagern.
Wenn Du ohne Passwortabfrage (PW wird im Programm gespeichert!) arbeiten willst, dann reicht eine ADOQuery. Ansonsten arbeitest Du mit einer ADOConnection und einer ADOQuery und Du must dblogdlg für den Login-Dialog einbinden. (uses dblogdlg; reicht!)
Delphi-Quellcode:
const
sqltext='select tabelle.feld1 from tabelle where tabelle.feld2=:_feld9_';
...
begin
AL_DM.Query1.Close;
AL_DM.Query1.Sql.Text:=sqltext;
AL_DM.Query1.Parameters.ParamByName('_feld9_').value:='1234';
AL_DM.Query1.open;
if not AL_DM.Query1.eof then repeat
// Daten einlesen
AL_DM.Query1.Next;
until AL_DM.Query1.eof;
AL_DM.Query1.Close;
end;
Gruß
K-H
P.S.
DB-Änderungen über
Query.execSQL und natürlich ohne Rückgabewerte.