![]() |
Delphi ändert SQL-Statement bei Gruppenfunktion mit Paramete
Hallo zusammen, ich möchte SQL Abfragen mit Parametern benutzen.
Abfragen ohne Gruppenfunktionen wie Count,Min,Max... klappen prima. Wenn ich aber z.B.
SQL-Code:
eingebe kommt die Fehlermeldung kein GROUP BY Ausdruck.
SELECT COUNT(*) FROM lagereinheiten WHERE le_id = :WERT1 GROUP BY le_id
Nun hab ich das Statement von meinem Programm zur DB abgegriffen und gesehen das die Abfrage erweitert wurde :
SQL-Code:
wenn ich den Parameter direckt setze WHERE le_id = '12345' wird das Statement auch geändert läuft aber ohne Fehler durch.
SELECT COUNT(lagereinheiten.*),lagereinheiten.ROWID WHERE le_id = :v00001 GROUP BY le_id
Erweitere ich das Statement um ROWID (GROUP BY le_id, ROWID) läuft das Statement liefert aber sehr viele Zeilen zurück. Ich benutze die TADO Komponenten Reihenfolge bei der Abfrage: Dataset.Active:=False; Dataset.prepared:= true; Dataset.Commandtest:='SELECT....'; Dataset.Parameters.ParameterByName('WERT1').Value: ='123'; Dataset.Active:=True; wie kann ich dieses Verhalten unterbinden? |
Re: Delphi ändert SQL-Statement bei Gruppenfunktion mit Para
Deine Gruppierung ist sinnlos, da du immer nur eine le_id haben kannst.
Schließlich machst du ja das da: ;)
SQL-Code:
Außerdem sieht das ganze aus wie der Bullshit, den sich der Microsoft ADO Provider für Oracle zusammenfriemelt.
WHERE le_id = :WERT1
Der von Oracle macht nicht solchen Käse. ;) |
Re: Delphi ändert SQL-Statement bei Gruppenfunktion mit Para
Super, es war der MS Treiber.
Das obere Statment habe ich soweit gekürzt um den Fehler zu finden, es sollte mindestens ohne Fehler laufen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:07 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-2025 by Thomas Breitkreuz