Delphi-PRAXiS
Seite 2 von 12     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Datenerfassung mit Firebird Datenbank (https://www.delphipraxis.net/129737-datenerfassung-mit-firebird-datenbank.html)

mkinzler 24. Feb 2009 20:37

Re: StringGrid mit Daten füllen und farblich Darstellen
 
Zitat:

vielleicht mkinzler bitten, ob er das Thema abspalten kann und unter dem Themengebiet Datenbank schieben kann.
Könnte ich machen; aber auch jeder andere Moderator.
Zitat:

Es ist auch von mir nicht böse gemeint, aber mit den kurzen knappen antworten, komme ich nicht so richtig weiter. Ich weiß auch das die Festplattengröße eine Rolle spielt, aber bislang, habe ich die Daten in TXT Dateien gespeichert, und da brauchte ich mir keine Gedanken über die Festplattengröße zu machen, bei max. 100KB pro Tag, dauert es schon ewig, bis da 80GB und mehr voll sind.
Viel größer ist ein Datensatz in einer Datenbanktabelle auch nicht. Ich meinte mit meiner Aussage, das du dir hierbei auch keinen Kopf machen musst.

Jens Hartmann 24. Feb 2009 21:09

Re: StringGrid mit Daten füllen und farblich Darstellen
 
Danke erstmal, das ihr mir das nicht übel genommen habt, und daher, bitte ich dich mkinzler, das Thema wirklich vieleicht abzuspalten und unter Datenbank zu erstellen.

So jetzt aber zum Thema, ich habe jetzt eine Datenbank erstellt. Das geht endlich mit Deutscher Version und Deutscher Dokumentation auch ganz gut.

Ich habe das mit den Generatoren auch schon gesehen, nur noch nicht genau verstanden. Aber, ich habe jetzt die Möglichkeit in einer mir Verständlichen Sprache nachzulesen.

Und zu der Sache mit dem Datum...

Chemiker hat geschrieben;
Zitat:

Eine Frage zu dem Datum ich habe es so gelöst das auch das automatisch von der Datenbank erzeugt wird, also wenn ein neuer Datensatz in der Datenbank angelegt wird, wird automatisch das aktuelle Datum vergeben.
Das wäre sicherlich möglich, nur ist halt meine Frage ob es Sinn macht, wenn ich das Datum ja eh in dem Datensatz mitgeliefert bekomme.

mkinzler 24. Feb 2009 21:25

Re: Datenerfassung mit Firebird Datenbank
 
Zitat:

Ich habe das mit den Generatoren auch schon gesehen, nur noch nicht genau verstanden. Aber, ich habe jetzt die Möglichkeit in einer mir Verständlichen Sprache nachzulesen.
Du kannst dir Generatoren als tabellenunabhängige Variablen vorstellen, in denen der nächste Wert steht. Diese können mit der Semaphorenfunktion GEN_ID() erhöht werden.

Jens Hartmann 24. Feb 2009 21:34

Re: Datenerfassung mit Firebird Datenbank
 
Also, kann wenn ich das jetzt richtig verstanden habe, vorher in meiner Paradox Datenbank, hatte ich in meine Tabelle einer Variable mit dem Format Zähler, diese wurde ständig hochgezählt und bei gelöschten Datensätzen auch nicht mehr frei gegeben.

Ich will mal kurz beschreiben, wie ich meine Tabelle jetzt aufgebaut habe:

1 ID BIGINT als Generator
2 Nr INTEGER
3 Datum DATE
4 Uhrzeit TIME
5 Ereignis VARCHAR
6 Teilnehmer VARCHAR
7 Bereich VARCHAR

Jetzt möchte ich die Datensätze in die Datenbank einfließen lassen und versehe jeden einzelnen mit einer ID die durch den Generator automatisch erzeugt wird.

Naja ich denke so könnte das gehen.

Chemiker 24. Feb 2009 21:38

Re: Datenerfassung mit Firebird Datenbank
 
Hallo Jens Hartmann,

bei der Firebird- Installation wird auch eine DEMO-Datenbank mit den Namen:
FB2_0Datenbank\examples\empbuild\EMPLOYEE.FDB
mit installiert. Dort kannst Du z.B. in der Tabelle: CUSTOMER einen Trigger sehen der das Feld CUST_NO mit einem Generator füllt.

Bis bald Chemiker

mkinzler 24. Feb 2009 21:40

Re: Datenerfassung mit Firebird Datenbank
 
Zitat:

1 ID BIGINT als Generator
Nicht als Generator, sondern generatorunterstützt.
Hierbei hast du verschiedene Möglichkeiten:
-Setzen des Wertes durch einen Trigger ( der sich dem Generator(Sequenz) bedient (kannst du mit samt des enerators von IBExpert erzeugen lassen)
-Inline:
SQL-Code:
insert into <Tabelle> ( ID, ...) values ( gen_id( <generator>, <Schrittweite>), ...) returning ID;
-Mit Sequenzkomponente

Chemiker 24. Feb 2009 21:46

Re: Datenerfassung mit Firebird Datenbank
 
Hallo Jens Hartmann,

das Datum und die Uhrzeit würde ich zusammenfassen als TimeStamp.

Bis bald Chemiker

Jens Hartmann 24. Feb 2009 21:48

Re: Datenerfassung mit Firebird Datenbank
 
Habe die Demodatenbank mal geladen, also ist es so, das der Generator durch den Trigger beeinflußt wird, der

wenn ich das richtig sehe, durch die Funktion Befor Insert gesetzt wird.

mkinzler 24. Feb 2009 21:50

Re: Datenerfassung mit Firebird Datenbank
 
Ein Trigger ist ein Stück Code, welches auf Grund eines Ereignisses aufgerufen (getriggert) wird.
In diesem Fall vor dem Insert.

Jens Hartmann 24. Feb 2009 21:57

Re: Datenerfassung mit Firebird Datenbank
 
Das Datum als TimeStamp, habe ich auch gedacht. Allerdings möchte ich das Datum und die Uhrzeit gerne nachher getrennt Anzeigen können, oder nach suchen lassen, macht es da Sinn, diese zusammen einzutragen, wenn ich Sie später getrennt benötige.

Zitat:

Ein Trigger ist ein Stück Code, welches auf Grund eines Ereignisses aufgerufen (getriggert) wird.
In diesem Fall vor dem Insert.
Also, das habe ich jetzt so weit verstanden, Der Trigger in diesem Fall SET_CUS_NO wird vor dem Insert ausgeführt, und in diesem Trigger der GEN_CUST_NO hochgezählt. Genauso, könnte ich somit weiter Funktionen ausführen lassen,

Also auch das aktuelle Datum, wie Chemiker eben vorgeschlagen hat mit Eintragen lassen.

Das heißt, ich könnte dann ja wirklich Datum und Uhrzeit von der Datenbank erzeugen lassen, und übernehmen, und müsste nur noch die eigentlichen Daten einbinden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:18 Uhr.
Seite 2 von 12     12 34     Letzte »    

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