![]() |
Datenbank: MS Access • Version: 2003 • Zugriff über: OLEDB.4.0
SQL SUM - Unbekannter Fehler
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich möchte eigentlich nur die Anzahl aller Werte addieren wenn sie der Vorgabe entsprechen. (Die Tabelle mit ein paar Dummy-Werten im Anhang)
Delphi-Quellcode:
Doch leider kommt es bei Q.Open zu einer Exception = 'Unbekannter Fehler'.
function TWotFS.GetResult(const Value : Integer) :Integer;
var Q : TADODataSet; S : String; I : Integer; begin Q := TADODataSet.Create(Self); try I := GetLastIdx('TabSession'); S := Format('Select SUM(Result) As Ret From TabStatistic Where ((Session=%s) and (Result=%s))', [IntToStr(I), IntToStr(Value)]); Q.Connection := ADOConn; Q.CommandText:= S; Q.Open; Result := Q.FieldByName('Ret').AsInteger; Q.Close; finally Q.Free; end; end; Eine Abfrage des generierten SQL-Strings in MS Access bringt das gewünschte Ergebnis:
Code:
Was läuft da schief?
'Select SUM(Result) As Ret From TabStatistic Where ((Session=1) and (Result=1))' = 2.
|
AW: SQL SUM - Unbekannter Fehler
Warum IntToStr, wenn es (Ganz)Zahlen sind?
Die Abfrage sieht richtig aus, kann mir höchstens vorstellen, dass Deine Parameter nicht so befüllt sind, wie Du glaubst, besonders die Tabindexsache. probehalber mal feste Werte eintragen, ohne Format. |
AW: SQL SUM - Unbekannter Fehler
Hallo,
was kommt bei Select * From TabStatistic Auch unbekannter Fehler? Dann stimmt deine Connection nicht. |
AW: SQL SUM - Unbekannter Fehler
Solche Sachen wie
Code:
laufen durch,
'Select * From TabStatistic'
Code:
aber nicht. Es kommt wieder 'Unbekannter Fehler'.
'Select SUM(Result) As Ret From TabStatistic Where ((Session=1) and (Result=1))'
|
AW: SQL SUM - Unbekannter Fehler
Falls Du den SQL Text irgendwie per Copy / Paste in den Code geschaufelt hast:
Nimm ihn raus und tipp ihn noch mal ein. Vielleicht gibt es auch ein Problem mit Namensfeldern der Tabelle, die besondere Zeichen enthalten, dann müssten bei Access glaub ich diese eckigen Klammern drum.. |
AW: SQL SUM - Unbekannter Fehler
Hallo,
dann schrittweise den Fehler "einkreisen". Select * From TabStatistic // hattest Du bereits Select SUM(Result) From TabStatistic Select SUM(Result) As Ret From TabStatistic usw. |
AW: SQL SUM - Unbekannter Fehler
Hallo,
@Alter Mann Der Feldname 'Session' ist das Problem. Selbst der einfache SQL-Befehl 'Select * From TabStatistic Where Session=1;' ergibt einen unbekannten Fehler. Frag mich nicht warum. Ich arbeite schon sehr lange nicht mehr mit Access. Ändere ihn mal ab in z.B. 'ASession'. Damit hat Dein Beispiel hier bei mir funktioniert. Getestet habe ich mit mit Access 2000 und Delphi 7 (Hab ich noch auf einen alten XP-Rechner).:-D |
AW: SQL SUM - Unbekannter Fehler
Wenn es daran liegt, sollte
SQL-Code:
doch auch funktionieren, oder?
Select
SUM(Result) As Ret From TabStatistic Where (([Session]=1) and (Result=1)) |
AW: SQL SUM - Unbekannter Fehler
Hallo,
@DeddyH ja das funktioniert auch (hab es gerade getestet). Wie gesagt ich habe sehr lange nicht mehr mit Access gearbeitet.:| |
AW: SQL SUM - Unbekannter Fehler
Hallo,
Nachtrag: Ich hab hierzu mal ein bisschen gegoogled. Das erklärt vielleicht warum es mit dem Feldnamen 'Session' Probleme gibt. ![]() . |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz