[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2001
    Beiträge
    388

    DB2 identity Nummer

    Hallo zusammen, wir übertragen von einem System zu anderen über Nacht Daten per FTP. Einige Tabellen arbeiten mit von der DB2 generierten "Identity" Nummern nach diesem Muster : GENERATED ALWAYS AS IDENTITY. Weiss jemand wo die DB2 diese Nummern speichert ( evtl. in QSYS2 ), um diese dann zu synchronisieren.

    Vielen Dank,,
    Andreas
    Andreas Herzfeldt

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Ich bin mir nicht sicher ob ich dir richtig verstanden habe.
    Diese Klausel kannst du bei einer Tabelle für eine Spalte angeben.
    Die DB2 schreibt die Nummern dann in die Spalte hinein.

    Mit dem Zusatz ALWAYS wird auch definiert, dass NUR das System die Nummer schreiben darf.
    Wenn User und System die Nummern schreiben dürfen, muss der Zusatz DEFAULT verwendet werden.
    Wobei ich bei der GENERATED Klausel nur ALWAYS empfehlen kann, da es sonst zu Problemen führen kann.

    lg Andreas

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.877
    Zitat Zitat von Andreas Herzfeldt Beitrag anzeigen
    Hallo zusammen, wir übertragen von einem System zu anderen über Nacht Daten per FTP. Einige Tabellen arbeiten mit von der DB2 generierten "Identity" Nummern nach diesem Muster : GENERATED ALWAYS AS IDENTITY. Weiss jemand wo die DB2 diese Nummern speichert ( evtl. in QSYS2 ), um diese dann zu synchronisieren.

    Vielen Dank,,
    Andreas
    Ich gehe davon aus, dass das 2. System ein Test oder Backup System ist und in der Nacht die Daten für neue Tests aktualisiert werden.

    Habt Ihr schon mal daran gedacht die Identity Columns auf dem anderen System mit GENERATE BY DEFAULT zu generieren oder vor der Übernahme entsprechend zu setzen.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  4. #4
    Registriert seit
    Jun 2001
    Beiträge
    388
    Hallo zusammen,

    wir haben das jetzt wie folgt gelöst, Birgitta hatte mit Ihrer Vermutung der Zweitsysteme recht.

    Ermittlung der maximalen Zähler per "select max", addieren + 1 und setzen des neuen Wertes per
    ALTER TABLE
    &NLIB/&NTABLE
    ALTER COLUMN &VID
    RESTART WITH &VCOUNT

    Das Ganze in ein CL mit QM-Query und gut ist.

    Frohe Weihnachten !

    Andreas
    Andreas Herzfeldt

Similar Threads

  1. Problem mit DB2 Connect
    By Ewald in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 24-01-07, 18:32
  2. Zugriff auf DB2 UDB
    By Azaron in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 05-12-06, 13:42
  3. 13.12.06 - DB2 V9 - pureXML, System i5 und CenturioDB
    By mlitters in forum Archiv NEWSboard Events
    Antworten: 0
    Letzter Beitrag: 11-10-06, 16:52
  4. DB2 <-> SQL-Datenbank (XAL)
    By MKl. in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 07-08-06, 07:46
  5. Access -> ODBC-> DB2
    By bluesXplosion in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 03-08-06, 09:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •