[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Jan 2008
    Beiträge
    58

    Primary Key in SYSCOLUMNS ?

    Hallo *ALL,

    ich brauche die Key Felder aus einer Datei zu ermitteln.
    Laut IBM gibt es in der SYSCOLUMNS ein Feld Namens KEYSEQ :
    SELECT NAME, KEYSEQ FROM SYSIBM.SYSCOLUMNS
    WHERE TBNAME = 'TABLE_NAME' AND KEYSEQ > 0
    ORDER BY KEYSEQ
    Auf unserer Maschine ist die Datei
    SYSCOLUMNS
    aber in der QSYS2
    und da gibt es das Feld
    KEYSEQ
    nicht.
    Wo stehen die Keys sonst dann ?
    Wer hat 'ne Idee dazu, wie kann man das per SQL sonst lösen ?

    Gruß
    A.W.


  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    select * from syskeys
    where index_name = 'AAA' and index_schema = 'MYLIB'
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jan 2008
    Beiträge
    58
    Hallo Fuerhau,
    wäre richtig, aber in der Datei habe ich nur die Index Dateien, nicht die physischen.

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wenn tatsächlich als Constraint "Primary Key" definiert, dann sollte es in der SYSCST oder SYSKEYCST stehen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Schau einfach mal in der QSYS2-Lib in die diversen SYSxxx-Views oder ins SQL-Handbuch.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Jan 2008
    Beiträge
    58
    Tja, ich habe schon (fast) alle SYSxxx tables durchsucht - nirgendwo habe ich einen passenden Hinweis gefunden.
    Mal abwarten, vielleicht meldet sich noch Jemand zu dem Thema.

  7. #7
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Wie war's mit SYSCST oder SYSCSTCOL ggf. auch beide mit einander verknüpft?
    Falls die Views in der Datenbiliothek nicht vohranden sein sollten, greif auf die in der QSYS2 zu.

    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

  8. #8
    Registriert seit
    Jan 2008
    Beiträge
    58
    Hallo Birgitta,
    ich weiss nicht genau was die zwei Dateien beinhalten, aber im Feld TABLE_NAME gibt es keine Dateinamen aus unserer Datenbank...

  9. #9
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    In diesen Views sind alle Tabellen, für die Primary, Uniqupe und Foreign Key Constraints definiert sind enthalten.
    Sind vielleicht auf Deinen Tabellen keine Constraints?
    Hast Du schon mal geprüft, ob "Deine" Tabellen-Namen unter System_Table_Namen zu finden sind?

    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

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Nun ja, die SYSxxx-Tabellen beschränken sich im Wesentlichen auf SQL-Objekte.
    Klassische PF's und LF's musst du eher per klassischen Methoden bearbeiten.

    Die Tabelle heißt QADBKFLD in der QSYS.
    Beim Betrachten der PF mittels DSPDBR fällt allerdings auf, dass in der SYSIBM die Tabelle SYSSTATS vorhanden ist.
    Und siehe da, das ist genau die Tabelle die du brauchst. Diese wird übrigens auch von ODBC für die Schemaabfrage SQLStatistics benötigt wird. Warum diese nun in die SYSIBM gewandert ist weiß ich allerdings auch nicht.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  11. #11
    Registriert seit
    Jan 2008
    Beiträge
    58
    Hallo Fuerchau,

    danke für den Tipp ! Mit der QADBKFLD kann ich entlich was anfangen !
    Andere Lösung war auch:
    DSPFD FILE(Mylib/MyFile) TYPE(*ATR) OUTPUT(*OUTFILE) FILEATR(*PF) OUTFILE(QTEMP/DSPFDXX)
    und die Felder stehen dann im Feld PHTXT aber im Format :
    KEY:xxxxx/xxxxx/xxxx u.s.w.

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    DSPFD ist ja die "klassische" Methode.
    Die QADBKFLD ist für Public gesperrt, du kannst also nicht mit einem normalen User darauf zugreifen.
    Die View SYSSTATS hingegen kann ständig verwendet werden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. IBM Networks Primary Logon Client for Windows NT and Windows
    By Markus Ralf in forum NEWSboard Windows
    Antworten: 0
    Letzter Beitrag: 19-04-02, 12:43

Berechtigungen

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