AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Abfrage: Datensätze mit gleichem Datum und gleicher Zeit
Thema durchsuchen
Ansicht
Themen-Optionen

Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

Ein Thema von Ralf Stehle · begonnen am 9. Sep 2004 · letzter Beitrag vom 10. Sep 2004
Antwort Antwort
Ralf Stehle

Registriert seit: 8. Aug 2003
124 Beiträge
 
Delphi 7 Professional
 
#1

Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 9. Sep 2004, 18:14
Hilfe,

ich verbringe schon eine Ewigkeit damit, eine Abfrage zu formulieren, aber jedesmal gibt es eine Fehlermeldung

Delphi 6 sucht in einer Abfrage Datensätze mit gleichem Datum aus einer MSAccess-Datenbank:
(als Verbindung habe ich Provider=Microsoft.Jet.OLEDB.4.0 .... ausgewählt)

diese 3 Versionen funktionieren alle nicht:
SQL-Code:
SELECT * FROM EKGDaten WHERE Date(Datum)=19/08/2004 and Time(Datum)= 15:13:10
SELECT * FROM EKGDaten WHERE Datum=19/08/2004 15:13:10
SELECT * FROM EKGDaten WHERE Datum=#19/08/2004 15:13:10#

Im Code versuche ich es entsprechend so:
Delphi-Quellcode:
  AdoQuery1.SQL.Clear;
  AdoQuery1.SQL.ADD(' Select * from EKGDaten');
  AdoQuery1.SQL.ADD(' WHERE Nachname = ''' + pChar(Nachname) + '''');
  AdoQuery1.SQL.ADD(' AND Vorname = ''' + pChar(Vorname) + '''');
  AdoQuery1.SQL.ADD(' AND Geburtstag = ''' + pChar(Geburtstag) + '''');
  AdoQuery1.SQL.ADD(' AND Datum = ''' +
       FormatDateTime('"#"m"/"d"/"yyyy hh:mm:ss"#"', Datum) + '''');

Ralf Stehle

[edit=Sharky]Formatierungs-Tags gesetzt. Mfg, Sharky[/edit]
Ralf Stehle
ralfstehle@yahoo.de
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#2

Re: Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 9. Sep 2004, 22:31
frage: stimmt da datumsformat von DB und system?
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
Ralf Stehle

Registriert seit: 8. Aug 2003
124 Beiträge
 
Delphi 7 Professional
 
#3

Re: Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 9. Sep 2004, 22:54
wie meinst Du das? Das Gebietsschema ist Germany, bei der SQL-Abfrage erwartet die OLEDB-Verbindung zu Access aber die US-amerikanische Schreibweise. Das versuche ich mit dem FormatDateTime-String zu lösen. Wenn ich die Uhrzeit weglasse, funktioniert es sogar. Die Uhrzeit brauch ich aber unbedingt. Wie muß die FormatDateTime-Anweisung inclusive Uhrzeit lauten? Ich meine eigentlich ich habe alles richtig gemacht. Auch der Versuch ohne # # hat nicht geklappt. Irgendwo habe ich gelesen, dass anstatt # #-Zeichen das ganze in ' ' eingerahmt werden muss. Ich habe aber auch nicht herausgefunden, wie ich ' als Zeichen und nicht zum Begrenzen eines Strings in FormatDateTime einsetze

Ralf
Ralf Stehle
ralfstehle@yahoo.de
  Mit Zitat antworten Zitat
Ralf Stehle

Registriert seit: 8. Aug 2003
124 Beiträge
 
Delphi 7 Professional
 
#4

Re: Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 9. Sep 2004, 23:05
ich habe gerade nochmal probiert, das Problem zu lösen. Ich könnte einfach in der Datenbank das DateTime-format in String verwandeln. Da dabei die Sortierung nach Datum nicht hundertprozentig zufriedenstellend klappt, geht es auch durch Stringumwandlung im SQL-Ausdruck:

SELECT * FROM EKGDaten WHERE CStr(Datum)= '19.08.2004 15:13:11'

Ralf
Ralf Stehle
ralfstehle@yahoo.de
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 10. Sep 2004, 07:54
Hai Ralf,

gerade beim arbeiten mit Datumswerten kann ich immer nur empfehlen Parameter in der SQL-Abfrag zu verwenden. Dann sollte sich nämlich der "Treiber" darum kümmern das alles im richtigen Format bei der Datenbank ankommt.
Zum Beispiel so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  with ADOQuery1 do
  begin
    Close;
    SQL.Text := 'SELECT * FROM tabelle1 WHERE datum = :pdatum'; // ":pdatum" ist der Parameter
    ParamCheck := True; // Verwendung von Parametern aktivieren
    Parameters.ParamByName('pdatum').DataType := ftDateTime; //Typ auf DateTime setzen
    Parameters.ParamByName('pdatum').Value := now; // Parameter ":datum" setzen
    Open;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Ralf Stehle

Registriert seit: 8. Aug 2003
124 Beiträge
 
Delphi 7 Professional
 
#6

Re: Abfrage: Datensätze mit gleichem Datum und gleicher Zeit

  Alt 10. Sep 2004, 18:03
Danke für den guten Tipp
Ralf
Ralf Stehle
ralfstehle@yahoo.de
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:33 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