AGB  ·  Datenschutz  ·  Impressum  







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

AutoIncrement mit FireBird

Ein Thema von Marco Steinebach · begonnen am 15. Apr 2021 · letzter Beitrag vom 15. Jul 2021
Antwort Antwort
Marco Steinebach

Registriert seit: 4. Aug 2006
503 Beiträge
 
Delphi 5 Enterprise
 
#1

AutoIncrement mit FireBird

  Alt 15. Apr 2021, 20:33
Datenbank: FireBird • Version: 3.0 • Zugriff über: IBDAC
Hallo zusammen,
Ich möchte gern in FB eine Tabelle erstellen, bei der das Feld "ID", welches auch zur eindeutigen Identifikation dient, bei jedem Insert automatisch hochgezählt wird.
Ich hab das Ganze zwar in Delphi gelöst, aber es muss doch, um Himmelswillen, auch irgendwie in der Datenbank zu verankern sein???
Ich hab schon viel über Generatoren und co gelesen, aber ich kapiere nicht, wo die hin müssen, und, tja, eigentlich kapiere ich das ganze Zeug nicht.
Kann mir da bitte mal jemand helfen?
Also ich träume von
Code:
CREATE TABLE 'TEST' (ID NOT NULL PRIMARY KEY AUTO_InCREMENT'
...
Sprich, wenn ich dann ein Insert oder Append absätze, brauche ich mich um die ID nicht mehr kümmern.
Und nu?

Für eure Antworten bedanke ich mich schonmal ganz herzlich.
Wandogau
Marco Steinebach
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.020 Beiträge
 
Delphi 12 Athens
 
#2

AW: AutoIncrement mit FireBird

  Alt 15. Apr 2021, 20:45
Ja, du brauchst einen Generator für sowas.
Was benutzt du denn um die DB zu verwalten?
IBExpert?
Dort gibt's glaube ich einen Baumknoten dafür.
  Mit Zitat antworten Zitat
Marco Steinebach

Registriert seit: 4. Aug 2006
503 Beiträge
 
Delphi 5 Enterprise
 
#3

AW: AutoIncrement mit FireBird

  Alt 15. Apr 2021, 20:49
*lächel, bis jetzt nix.
Ein schlichtes
[code]
CREATE DATABASE TEST
{/code]
und das war's, bis jetzt.
Können solche Generatoren via SQL angelegt werden, oder wie?
Und wo kommt dann deren Aufruf hin?
Ich würde, furchtbar gern, alles, was angelegt werden muss mit meinem Programm selbst erledigen.

Herzlich grüßt
Wandogau
Marco Steinebach
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.176 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: AutoIncrement mit FireBird

  Alt 15. Apr 2021, 21:26
Es gibt einige Beispiel hier in der DP für einen Generator.
Vllt hilf dir das hier schon weiter => https://www.delphipraxis.net/1355130-post13.html
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.552 Beiträge
 
Delphi 7 Professional
 
#5

AW: AutoIncrement mit FireBird

  Alt 15. Apr 2021, 21:31
Das erste Suchergebnis meiner Suchmaschine liefert für "firebird autoincrement" passende Statements mit ausführlicher Erläuterung.

How to create an autoincrement column?
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
772 Beiträge
 
#6

AW: AutoIncrement mit FireBird

  Alt 15. Apr 2021, 23:08
Bei Firebird 3 kann man sich das mit dem Generator und dem Trigger automatisieren lassen:

https://stackoverflow.com/questions/...ebird-database
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.428 Beiträge
 
Delphi 12 Athens
 
#7

AW: AutoIncrement mit FireBird

  Alt 16. Apr 2021, 07:32
Moin...
Zitat:
*lächel, bis jetzt nix.
...dann wird es aber Zeit. https://dbeaver.io/
Zitat:
Ich würde, furchtbar gern, alles, was angelegt werden muss mit meinem Programm selbst erledigen.
-1 Halte ich für schlecht. Früher habe ich auch so gedacht. Aber...DB Admistration ist Sache des DB Tools.
Begründung:
1. DB Sicherung und Wiederherstellung. Wenn du eine "ältere" DB wiederherstellen mußt, dann müßtest du das Programm laufen lassen um wieder den gleichen Meta Stand zu haben.
2. Du kannst keine Differenzscripte erstellen
3. Die DB sollte ihre "Version" kennen um dann Differenzscripte auszuführen zu können. (Tabelle "_Version" o.ä.)
4. Übersicht über die Änderungen (siehe Bild)

Beispiel:
Du hast eine DB mit Version 500 als Datensicherung. Die aktuelle DB hat aber 502...dann läßt du die Scripte für 501 und 502 nacheinader ausführen...fertsch.
Code:
Zitat:
Können solche Generatoren via SQL angelegt werden, oder wie?
ja...wie schon gesagt.
Zitat:
Und wo kommt dann deren Aufruf hin?
Ausführung des SQL mit den entspechenden Anweisungen
Angehängte Grafiken
Dateityp: jpg Patch.jpg (107,5 KB, 29x aufgerufen)

Geändert von haentschman (16. Apr 2021 um 07:39 Uhr)
  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 21:34 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