Einzelnen Beitrag anzeigen

goolaf

Registriert seit: 30. Jul 2004
Ort: 42781 Haan
12 Beiträge
 
Delphi 5 Enterprise
 
#1

Delphi 7 und TQuery-Parameter

  Alt 29. Jun 2005, 15:34
Datenbank: Sybase • Version: 7 • Zugriff über: BDE und ODBC
Hallo,
ich habe folgendes Problem, seit ich unsere Anwendung von Delphi 5 und Sybase 6 auf Delphi 7 und Sybase 7 umgestellt habe:

Ich benutze eine TQuery, in welche ich folgenden SQL-Script eingetragen habe:
SQL-Code:
select df_ndl,df_datauftannahme,df_lfdnrauftrag,df_kundennr,df_kzeuro,
df_serviceart,df_belegtyp,df_vkgesamt,df_auftstatus
from dba.tb_auftrag
where df_ndl=:par_ndl
and df_datauftannahme between :par_datauftannahme1
and :par_datauftannahme2
and df_auftstatus=:par_auftstatus
order by df_kundennr,df_datauftannahme
Im Programm selbst übergeb ich dann folgende Parameterwerte:
Delphi-Quellcode:
params.parambyname('par_ndl').asstring:='CGN';
params.parambyname('par_datauftannahme1').asdatetime:=strtodate('01.06.2005');
params.parambyname('par_datauftannahme2').asdatetime:=strtodate('30.06.2005');
params.parambyname('par_auftstatus').asinteger:=3;
Diese Abfrage dauert Ewigkeiten (ich arbeite noch mit der BDE), obwohl in Sybase hierfür ein Index vorgesehen ist und dieser auch, wenn ich die Abfrage direkt auf Sybase starte, benutzt wird und mir sofort ein Ergebnis anzeigt.

Ändere ich das Programm wie nachfolgend ab:
Delphi-Quellcode:
sql.Clear;
sql.add('select df_ndl,df_datauftannahme,df_lfdnrauftrag,df_kundennr, df_kzeuro,df_serviceart,df_belegtyp,df_vkgesamt,df_auftstatus');
sql.add('from dba.tb_auftrag where df_ndl=''CGN'' and df_datauftannahme between ''2005-06-01'' and ''2005-06-30''');
sql.add('and df_auftstatus=3 order by df_kundennr,df_datauftannahme');
d.h.ich baue für die TQuery erst im Programm selbst den Befehl auf, dann habe ich wie gewohnt sofort ein Ergebnis.

Was läuft hier bei Delphi 7 anders? Die Befehle, die durch die BDE geschickt werden, sind doch absolut identisch, nur das ich eben einmal mit Parametern und diese dann im Programm belege und das andere mal mit Echtwerten arbeite.
Hat jemand ähnliche Erfahrungen mit Delphi 7 gemacht und eventl. eine Lösung?

[edit=Sharky]SQL- und Delphi-Tags gesetzt. Mfg, Sharky[/edit]
Vielen Dank für Eure Hilfen.

Olaf
  Mit Zitat antworten Zitat