AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Nur bestimmte Schulklassen (Datensätze) auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Nur bestimmte Schulklassen (Datensätze) auslesen

Offene Frage von "Svenkan"
Ein Thema von Svenkan · begonnen am 24. Nov 2007 · letzter Beitrag vom 25. Nov 2007
Antwort Antwort
Seite 2 von 2     12   
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Nur bestimmte Schulklassen (Datensätze) auslesen

  Alt 24. Nov 2007, 23:49
Ja ok, die Abkürzungen sind teilweise etwas verwirrend...
Aber mit der Zeit lernt man damit umzugehn.
Aber wie siehts denn nun mit meiner Abfrage aus?
Das Problem ist:
bei manchem Klassenkombinationen (wie oben) funktioniert es problemlos!
Wenn ich aber nun z.B. die Datei Abt3.txt einlese mit dem Inhalt

Code:
AG  
Nh  
SV
dann kommen die genannten Probleme.
Und das macht mir verdammte Sorgen. Denn es sollte nach Möglichkeit mit allem funktionieren.....
Sven Kannenberg
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: Nur bestimmte Schulklassen (Datensätze) auslesen

  Alt 24. Nov 2007, 23:52
Ich gebe grenzgaenger recht. Bring das Ganze in ein konsistenten Schema. dann wird alles einfacher und weniger fehleranfällig
Markus Kinzler
  Mit Zitat antworten Zitat
raiguen
(Gast)

n/a Beiträge
 
#13

Re: Nur bestimmte Schulklassen (Datensätze) auslesen

  Alt 25. Nov 2007, 13:11
Abgesehen von grenzgängers und mkinzlers Aussage...macht mich das hier ein bischen stutzig
hier (#1) 'bastelst' du das SQL-Statement zusammen:
Delphi-Quellcode:
Query1.Close;
  Query1.SQL.Text := 'SELECT * FROM "VT'+sj+'"';
  Query1.SQL.Add('WHERE NOT S="M" AND NOT S="E" '+abteilung+' AND NOT S="H" AND DATUM=:today');
  Query1.SQL.Add('ORDER BY DATUM DESC,'+order1);
  Query1.ParamByName('today').Value := today;
  Query1.Open;
und hier(#4) ist angeblich der erzeugte SQL-Code:
Delphi-Quellcode:
SELECT * FROM "VT07_08.dbf"
WHERE NOT S="M" AND NOT S="E" AND BETKLA IN ("AG=","Nh=","SV=") OR KLASSEN IN ("AG","Nh","SV") AND NOT S="H" AND DATUM=:today
ORDER BY DATUM DESC,KLASSEN ASC,S ASC
irgendwie passt das nicht zusammen Woher kommt das OR KLASSEN IN ("AG","Nh","SV")??? Hab ich da was übersehen??
Ich würde bspw. das SQL-Statement so aufbauen, sprich die Bedingungen vernünftig zusammenfassen (Stichwort: Klammern!):
SQL-Code:
SELECT * FROM "VT07_08"
  WHERE ( S NOT IN ("M","E","H")
          AND ( BETKLA IN ("AG=","Nh=","SV=")
                OR KLASSEN IN ("AG","Nh","SV")
               )
         )
         AND DATUM=:today
  ORDER BY KLASSEN ASC,S ASC
Sortierung nach Datum hab ich mir geschenkt - weil: warum danach sortieren , wenn eh nur ein bestimmtes Datum (nämlich der heutige Tag) ausgeguckt wird???
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz