Announcement

Collapse
No announcement yet.

Delphi 7 und TQuery-Parameter

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Delphi 7 und TQuery-Parameter

    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:

    select df_ndl,df_datauftannahme,df_lfdnrauftrag,df_kunden nr,df_kzeuro,
    df_serviceart,df_belegtyp,df_vkgesamt,df_auftstatu s
    from dba.tb_auftrag
    where df_ndl=ar_ndl
    and df_datauftannahme between ar_datauftannahme1
    and ar_datauftannahme2
    and df_auftstatus=ar_auftstatus
    order by df_kundennr,df_datauftannahme

    Im Programm selbst übergeb ich dann folgende Parameterwerte:

    params.parambyname('par_ndl').asstring:='CGN';
    params.parambyname('par_datauftannahme1').asdateti me:=strtodate('01.06.2005');
    params.parambyname('par_datauftannahme2').asdateti me:=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:

    sql.Clear;
    sql.add('select df_ndl,df_datauftannahme,df_lfdnrauftrag,df_kunden nr, 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?
Working...
X