Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi FIREBIRD Datenbank Auto Increment Tutorial. (https://www.delphipraxis.net/126500-firebird-datenbank-auto-increment-tutorial.html)

Gandimann 26. Dez 2008 13:58

Datenbank: Firebird • Version: 2.1 • Zugriff über: Anydac LocalHost

FIREBIRD Datenbank Auto Increment Tutorial.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Halo Freunde ,
ich bin ein blutiger anfänger daher auf meine Frage bitte nicht soffort sauer werden :angel2: . Wie gesagt ich lerne jetzt DELPHI. Mit Database Workbench habe ich ein Firbird
Datenbank mit 2 Tabellen entworfen. Die Tabelle "ADRESSE" ist mit 1 Feld namen " PAX_ID" ist mit Auto-Increment und Premierschlüssel eingestellt. Soweit so gut wenn ich nun mit Delphi aufm Datenbank zugreife läuft alles einwandfrei bis dieses Autoincrement Feld der eigentlich sich selbst die Werte einfügen soll.Es funktioniert aber nicht. Daher meine Frage bzw. Bitte , kann jemand für ein Anfänger wie ich ein Sample Projekt mit DELPHI programmieren damit ich endlich was verstehen kann.
Firebird-Datenbank habe ich als Anhangsdatei drangehängt --------> USER: RSSB Password : babaji

PS: seit über 2 Wochen suche ich in Internet aber fand nur theorie kein Tutorial (Step by Step) womit ich wirklich was anfangen konnte.

DANKE im Voraus und Frohe Weihnachten + guten Rutsch ins neue...

haentschman 26. Dez 2008 15:11

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hallo...

ein automatisches AutoInc Feld gibt es in Firebird nicht. Du mußt das über einen Generator und Trigger lösen.

ein kleines Tutorial zu Firebird und AutoInc...entsprechend deinen Bedürfnissen anzupassen.

Tutorial in der DP

hoffe weitergeholfen zu haben... :P

PS: davon gibt es noch mehr Infos hier...bemühe mal die Suche der DP und lese das, was für dich wichtig ist. :wink:

Jens Schumann 26. Dez 2008 15:18

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hallo,
ich verwende noch die Version 2.0.1.12855.
In der Version 2.0.1 löse ich das AutoIncrement Problem über einen Generator
und Trigger. Nach jedem Insert feuert der Trigger und schreibt den aktuellen
Generatorwert in ID.
SQL-Code:
CREATE TABLE "JS_TABLE"
(
  "ID"   TINT NOT NULL,
  "js_NAME" varchar(15) COLLATE DE_DE,
CONSTRAINT "PK_JS_TABLE" PRIMARY KEY ("ID")
);
SET TERM ^ ;

CREATE GENERATOR gen_JSTABLE ^

/* Triggers only will work for SQL triggers */

CREATE TRIGGER "TRG_JS_TABLE_0" FOR "JS_TABLE"
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.id is null) then new.id=gen_id(gen_JSTABLE,1);
end
 ^

COMMIT WORK ^
SET TERM ;^
Beim Insert wird die ID nicht angegeben
SQL-Code:
INSERT INTO JS_TABLE (js_NAME) VALUES ('ZWENTIBOLD')
Ob die Version 2.1 einen speziellen Datentyp bereitstellt weiss ich nicht.

Gandimann 26. Dez 2008 15:34

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hi Jens,
Hi haentschman,

vielen Dank für eure nette Antworten !... aba aba es ist nur Theorie die ich seit 2 wochen im Internet lese aber komme leider nix weiter deswegen habe ich gebeten gehabt
BITTE SAMPLE PROJEKT zu schreiben und hochladen. Dies bezüglich bitte ich immernoch. Diese 5-10 minuten zur Projekt Erstellung werden mir wirklich vieel weiter bringen
also bitte bitte bitte ein lauffähige Projekt... :thumb: 8) 8)

Jens Schumann 26. Dez 2008 15:50

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hallo Gandimann,
ich habe Dir ein komplettes Beispiel gegeben. Das AutoInc Thema hat nichts mit Delphi zu tun.

Gandimann 26. Dez 2008 16:04

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Habe ich halt dann PECH , weil keiner mir ein Projekt mit gegebenen DB schreiben will....schaaade !
Vieeeleicht Weihnachtstress.... :duck: :feuerchen: :coder2: Weihnachtstress ....

naja! warte ich einfach ab...

DeddyH 26. Dez 2008 16:05

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Einfacher als mit Elvis' Code wird es wohl kaum gehen.

haentschman 26. Dez 2008 16:10

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Zitat:

Habe ich halt dann PECH , weil keiner mir ein Projekt mit gegebenen DB schreiben will....schaaade !
...ähmmm...hab ich was verpaßt :gruebel: :wiejetzt:

DeddyH 26. Dez 2008 16:11

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Evtl. ist da mal wieder jemand auf der Suche nach C&P-Code.

Gandimann 26. Dez 2008 16:29

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Zitat:

Zitat von DeddyH
Evtl. ist da mal wieder jemand auf der Suche nach C&P-Code.

Vielen Dank für deine sehr motivierend Antwort.!!! :stupid:

Wie du vom mein ersten post erstezeile verstehen kannst dass ich alles getan habe um die theorie zu verstehen und bin ein ANFÄNGER der etwas lernen will und nicht mit c&p arbeiten will. Aba.... ich bekomme wieder nur theorie . Mir ist ein ganz kleine Beispiel projekt lieber der mir beweissen wird das die Theorie wirklich funktioniert.

DeddyH 26. Dez 2008 16:32

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Du hast doch schon (mindestens) 2 Beispiele bekommen, probier sie doch einfach mal aus.

Gandimann 26. Dez 2008 16:36

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Das mache ich seit über 2 Wochen ..ICH KOMME NIX WEITER !!

DeddyH 26. Dez 2008 16:37

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Das Problem scheint zu sein, dass Du gar nicht genau weißt, was Dein Problem ist. Es geht doch darum, eine Art "AutoInc" in Firebird zu realisieren, oder?

Jens Schumann 26. Dez 2008 16:46

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hallo,
bitte nicht falsch verstehen. Ich denke auch, dass die Problemstellung Delphi / Datenbank etc. für
einen ÄNFÄNGER nicht das passende Beispiel ist.

Gandimann 26. Dez 2008 16:47

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Ganz richtig !
Datenbank ist bereits mit Trigger intergriert:

---> before Inser / Update

begin
if ( (new.PAX_ID is null) or (new.PAX_ID = 0) )
then new.PAX_ID = gen_id(GEN_ADRESS_ID, 1);
end

Ich verzweifle nun ob ich wirklich das hin griege.....!

Ihr versucht mir zu helfen ist mir klar !! aber Ihr erkärt im profiweise die ich leider nicht peile...

aber könnt ihr bitte nicht ein beispiel projekt mit mei DB erstellen !

DeddyH 26. Dez 2008 16:50

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Was ist denn dein Problem genau? Was funktioniert nicht? Wie sollen wir Dir denn helfen, wenn wir nicht wissen, was los ist?

Jens Schumann 26. Dez 2008 16:55

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
Hallo,
ich kann Deine Datenbank mit Version 2.0.1 nicht öffnen. Bitte stelle uns doch mal einen
kompletten Metadatenabzug zur Verfügung.

Gandimann 26. Dez 2008 17:06

Re: FIREBIRD Datenbank Auto Increment Tutorial.
 
HUUUUURRRAAAAH !!!!!!

Ich habe das hingegriegt !!!!!!

Vielen Dank ! Trotzdem an Jens and DeddyH,

Ich würde aber gerne mein Sample-Projekt uploaden falls jemand braucht. AutoInc funzt nun TADELLOS !

Übrings Fehler lag im SQL-Query Statement !!

:dance: :cheer: :spin: :hello: :bounce2: :bounce1: :dancer:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:04 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-2025 by Thomas Breitkreuz