Autor Beitrag
Olli_Sahr
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 83


D5 Prof, D7 Architect
BeitragVerfasst: So 09.04.06 12:29 
Hallo,

ich habe Delphi 7 und die KaDao installiert (KaDao 9.0 und KaDaoControls 8.0).

Ich habe in meiner Anwendung eine KaDaoTable namens "TBL_Kunde" und eine namens "TBL_SQL" für SQL Abfragen.

Ich habe eine Procedure, die alle Datensätze in der Kundentabelle überprüft.
Das mache ich über die SQL Tabelle:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
DataModule.TBL_SQL.SQL.Add('select * from Kunden');
DataModule.TBL_SQL.Open;
DataModule.TBL_SQL.First;

while not (DataModule.TBL_SQL.Eof) do
begin
  // Mache irgendwas
  // Gib mal den Nachnamen des Kunden aus (zu Testzwecken)
  ShowMessage(DataModule.TBL_SQL.FieldValues['Nachneme']);
  DataModule.TBL_SQL.Next;
end;


Das funktioniert........

Was ich jetzt brauche ist die Anzahl meiner Datensätze.
Ich habe keine Ahnung, wie das gehen soll.

Ich kann zwar per SQL einen Befehl absetzen (so wie oben beschrieben), aber wie bekomme ich den Wert (Anzahl) wieder zurück?

Der SQL Befehl müsste meines Wissens (so weit ich in SQL fit bin) so aussehen:

ausblenden Delphi-Quelltext
1:
DataModule.TBL_SQL.SQL.Add('SELECT count(Kunden_ID) AS MeineSumme FROM Kunden');					


Aber es hapert daran, wie ich die Daten bekomme.

ausblenden Delphi-Quelltext
1:
ShowMessage(DataModule.TBL_SQL.FieldValues['MeineSumme']);					


Wirft einen Fehler (Feld "MeineSumme" gibt es nicht).

Ich bin in SQL noch neu, daher bitte ich Euch um Hilfe.

Danke


OLLI
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: So 09.04.06 12:45 
Versuch mal DataModule.TBL.RecordCount wenn TBL ein DatSet ist müßte es diese Eigenschaft haben.

_________________
Markus Kinzler.
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 09.04.06 12:53 
ausblenden Delphi-Quelltext
1:
2:
3:
q.sql.add('select count(*) from DeinerTabelle');
q.open;
DeineVariableAnzahlDatensaetze := q.fields[0];


Der Rückgabewert ist im ersten feld gespeichert. alternativ kannst du .RecordCount verwenden.
Olli_Sahr Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 83


D5 Prof, D7 Architect
BeitragVerfasst: Mo 10.04.06 17:18 
DANKE, das hat mir wirklich geholfen.