AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

date und string

Ein Thema von jschade · begonnen am 24. Jul 2003 · letzter Beitrag vom 22. Sep 2003
 
jschade

Registriert seit: 11. Jul 2003
Ort: Hamburg
62 Beiträge
 
#1

date und string

  Alt 24. Jul 2003, 11:18
hi leute,

hab folgendes problem:

will mit hilfe von zwei datetimepickern einen datumsbereich auswählen und dann in meiner datenbank prozesse selektieren, die teil dieses bereiches sind. dazu sind in der datenfelder zwei spalten vom type datum/zeit die den anfang und das ende der prozesse bestimmen.

ich übergebe den inhalt der beiden datetimepicker an zwei variablen vom typ string und baue diese dann in meine Abfrage ein. dann bekomme ich ne fehlermeldung "datentypen in kriterienausdruck unverträglich. ich weiß, dass diese kommt, weil ich strings in den datumsfeldern abfragen möchte.
setze ich nun meine variablen (für die datetimepicker) auf den typ tdatetime, kann ich sie nicht in meinen sql-string einbauen, ändere ich aber in der datenbank die beiden spalten auf den typ text, verfälscht das total mein ergebnis (keine ahnung warum)...

hat jemand evtl. nen vorschlag, wie ich das problem lösen könnte? probier hier die ganze zeit rum, aber komm nicht weiter...

Code:
procedure TPlanung.Button1Click(Sender: TObject);
var db :String;
var de :String;

begin
db := datetostr(DateTimePicker1.Date);
de := datetostr(DateTimePicker2.Date);

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT DATAUS.Name AS Prozess, DATAUS.Anfang, DATAUS.Ende FROM DATAUS WHERE (((DATAUS.Anfang <= '+QuotedStr(db)+') AND (DATAUS.Ende >= '+QuotedStr(de)+')) OR ((DATAUS.Anfang >= '+QuotedStr(db)+') AND (DATAUS.Anfang <= '+QuotedStr(de)+') AND (DATAUS.Ende >='+QuotedStr(de)+')) OR ((DATAUS.Anfang <= '+QuotedStr(db)+') AND (DATAUS.Ende >= '+QuotedStr(db)+') AND (DATAUS.Ende <= '+QuotedStr(de)+')) OR ((DATAUS.Anfang >= '+QuotedStr(db)+') AND (DATAUS.Anfang <= '+QuotedStr(de)+') AND (DATAUS.Ende >= '+QuotedStr(db)+') AND (DATAUS.Ende <= '+QuotedStr(de)+')))');
ADOQuery1.Open;

DBGrid1.Visible :=True;
DBGrid1.Repaint;
end;
  Mit Zitat antworten Zitat
 


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 10:57 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 by Thomas Breitkreuz