Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Bereich eines Tabellenfeldes (https://www.delphipraxis.net/88801-bereich-eines-tabellenfeldes.html)

Starworld1000 21. Mär 2007 11:07

Datenbank: Access • Version: 2000 • Zugriff über: ADO Connection (ODBC)

Bereich eines Tabellenfeldes
 
Hallo alle zusammen

Ich habe eine Datebank mit etwa 10 Millionen Datensätzen, für die ich eine Auswertung Basteln soll. Jetzt würde ich gerne einen Bereich festlegen mit einer Editbox, wo der Benutzer einen Startwert ('01.01.2006') eingibt und einen Endwert ('01.06.2006').

Das Bereich Zwischendrin soll, bsw. in einem DbGrid, und danach in einem Diagramm erscheinen

Nun mein Problem. Ich hab absolut keine Ahnung wie ich diesen Bereich realisieren kann ? :oops:

Naja wie man wohl merkt bin ich noch Anfänger :roll: Aber Ich würde mich freuen über einen Tip von euch



Grüße Starworld

Moony 21. Mär 2007 11:30

Re: Bereich eines Tabellenfeldes
 
Also,
du kannst über einen Datetimepicker den Benutzer das Start- & Enddatum setzen lassen. Anschließend kannst du über das ADODataset und einen SQL-Befehl die Datenmenge aus deiner Datenbank rausfiltern und in einem DBGrid anzeigen lassen. Danach kannst du dann mit einem Chart deine Daten graphisch auswerten.

Starworld1000 21. Mär 2007 14:08

Re: Bereich eines Tabellenfeldes
 
Danke für die schnelle Antwort

Okay der erste Teil scheint ganz einfach zu sein, nur weis ich noch nicht Richtig wie und wo ich das mit dem SQL Befehl mache ?
Kannst du mir da weiterhelfen ? :stupid:

LG Starworld

DGL-luke 21. Mär 2007 14:17

Re: Bereich eines Tabellenfeldes
 
Ich hoffe mal, in der Tabelle gibts ein Feld, in dem das Datum drinsteht?!

dann musst du das eingegebene Datum in das Format, in dem es in der Tabelle steht, umrechnen und einen entsprechenden Vergleich ausführen, z.B. so

SQL-Code:
SELECT * FROM data WHERE date > :date1 AND date < :date2
date1 und date2 solltest du dann in deiner zugriffskomponente definieren können, wenn ich das richtig in Erinnerung habe, ich arbeite meistens mit direkten SQL-Queries unter PHP.

Starworld1000 21. Mär 2007 15:11

Re: Bereich eines Tabellenfeldes
 
Ja der SQL Befehl war schon klar :cyclops:

Ich weis nur nicht wie ich den in DELPHI einbringe und wo und mit welchen Mitteln :oops:

Bin ja noch ein Anfänger in Sachen Delphi, und VBA kann DELPHI nicht es Wasser reichen :lol:

mkinzler 21. Mär 2007 15:22

Re: Bereich eines Tabellenfeldes
 
ADOQuery, ADODataSet, ...
http://www.dsdt.info/tutorials/?cat=6

Starworld1000 21. Mär 2007 16:31

Re: Bereich eines Tabellenfeldes
 
So ich hab es mal nach vielem Probieren hinbekommen

SELECT Zeit FROM Tabelle WHERE Zeit > #01-01-2006# AND Zeit < #02-01-2006#

Nur wie sag ich jetzt dem Teil, das die Werte in den 2 DateTimePicker stehen ? :mrgreen:

mkinzler 21. Mär 2007 17:31

Re: Bereich eines Tabellenfeldes
 
Verwende Parameter.

Starworld1000 21. Mär 2007 19:26

Re: Bereich eines Tabellenfeldes
 
Also jetzt steh ich wieder aufm Schlauch

Ich hab alles hinbekommen, nur weis ich jetzt nicht genau, wie ich mit dem DateTimePicker oder ner Pubs einfachen Edit Box einen Wert in die SQL Abfrage bekomme :gruebel:

Mit Parametern schön und gut aber wie ?


Ich bin zu Doof dafür, oder einfach nur Urlaubsreif :freak:

mkinzler 21. Mär 2007 19:33

Re: Bereich eines Tabellenfeldes
 
SQL-Code:
SELECT Zeit FROM Tabelle WHERE Zeit between :zeit1 and :zeit2;
Delphi-Quellcode:
AdoQuery.Parameter.ParamByName('zei1').Value := Trunc(Picker1.Date);
AdoQuery.Parameter.ParamByName('zei2').Value := Trunc(Picker2.Date);
AdoQuery.Open;


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:54 Uhr.
Seite 1 von 2  1 2      

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-2025 by Thomas Breitkreuz