[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte

Hybrid View

  1. #1
    Registriert seit
    Nov 2020
    Beiträge
    437
    Seit 7.3 gibt's auch das geniale Feature: Temporal Table.
    Ist im Prinzip ähnlich wie mit der Trigger Lösung, nur dass es genau für diesen Zweck eine eigene Technik in der DB2 gibt.
    Das schöne ist, man kann damit auch die bestehenden Verwaltungsbildschirm-Programme verwenden um den Stand zu einem bestimmten Zeitpunkt sehen zu können.
    Beispiel:
    Gibt es ein Bildschirmprogramm um Rechnungsinformationen anzeigen zu lassen, braucht man nur vor dem Aufruf von diesem Programm, mit einer SQL Prozedur das gewünschte Datum angeben und dann werden voll automatisch mir am Bildschirm die Rechnungsinformationen vom angegebenen Zeitpunkt angezeigt.
    Funktioniert auch mit Native-IO Programme (hab's selbst getestet).
    Es müssen die Tabellen nur via ALTER TABLE um ein paar Spalten erweitert werden.
    Wenn man diese als Hidden definiert, muss man bei den Programmen nichts weiter machen als sie einfach nur neu kompilieren und fertig.

    Die Suche nach dem Ursacher geht dann sehr schnell und einfach. Und für die Anzeige kann man sogar die bestehenden Programme verwenden, was super ist, wenn es sich um Tabellen handeln die in Abhängigkeit stehen und es nicht nur eine einzige ist.
    Da kann ich auch soweit zurück in die Vergangenheit wie ich möchte.

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.790
    Schön, dass die IBM das auch mal implementiert.
    Per Definition ist das schon mit ANSI SQL 2011 festgelegt worden.

    Aber du glaubst nicht, wie schnell, je nach Tabelle, du da deine Platten vollschreibst.
    Es gibt nämlich Anwendungen, die Satzsperren logisch über Feldinhalte durchführen und so am Tag zig1000de Updates durchführen.
    Das hatten wir bei Infor ca. 2001 schnell festgestellt, als mal zum Versuch die Journalisierung eingeschaltet wurde;-).
    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
    Nov 2020
    Beiträge
    437
    Naja, wenn du im Wiki die ANSI SQL 2011 Beschreibung liest, dann wirst du lesen, dass die IBM DB2 sogar die erste DB war die das implementiert hat.
    Oracle erst mit 12c.

    Das gleiche Problem mit vollschreiben hast du bei Triggern auch ;-)
    Reorg ist in beiden Lösungen das Stichwort.
    Dies sollte jedoch bei Bewegungsdaten nur sehr gezielt eingesetzt werden.
    Für Stammdaten (so wie hier gefragt) ist es perfekt.

  4. #4
    Registriert seit
    Jan 2001
    Beiträge
    853
    Zitat Zitat von Andreas_Prouza Beitrag anzeigen
    Naja, wenn du im Wiki die ANSI SQL 2011 Beschreibung liest, dann wirst du lesen, dass die IBM DB2 sogar die erste DB war die das implementiert hat.
    Oracle erst mit 12c.

    Das gleiche Problem mit vollschreiben hast du bei Triggern auch ;-)
    Reorg ist in beiden Lösungen das Stichwort.
    Dies sollte jedoch bei Bewegungsdaten nur sehr gezielt eingesetzt werden.
    Für Stammdaten (so wie hier gefragt) ist es perfekt.
    Hallo zusammen,

    zum Thema Temporal Table

    Haben wir auf der IBM i eine Möglichkeit die Anzahl der updates und Inserts einer Tabelle auszuwerten ?
    Für Stammdatentabellen wäre es hilfreich vorher zu wissen wieviel Daten sich in einem Zeitraum
    ansammeln könnten .
    Gruß
    Michael

  5. #5
    Registriert seit
    Nov 2020
    Beiträge
    437
    Hallo Michael,

    ja das ist einer der Vorteile dabei.
    In der History-Table gibt es ein paar zusätzliche Spalten (Aktion, Start- u. Endedatum, Änderungsuser usw.)
    Damit kannst du dir eine Liste auswerten lassen, in welchem Zeitraum welche Aktionen (Insert, Delete, Update) von welchen Usern durchgeführt wurden.

    lg Andreas

  6. #6
    Registriert seit
    Jan 2001
    Beiträge
    853
    Zitat Zitat von Andreas_Prouza Beitrag anzeigen
    Hallo Michael,

    ja das ist einer der Vorteile dabei.
    In der History-Table gibt es ein paar zusätzliche Spalten (Aktion, Start- u. Endedatum, Änderungsuser usw.)
    Damit kannst du dir eine Liste auswerten lassen, in welchem Zeitraum welche Aktionen (Insert, Delete, Update) von welchen Usern durchgeführt wurden.

    lg Andreas
    Hi Andreas,

    sorry da habe ich mich etwas falsch ausgedrückt.

    Ich möchte wissen bevor ich eine Tabelle umstelle wie viele Änderungen an einer Table stattfinden

    Gruß Michael

  7. #7
    Registriert seit
    Sep 2005
    Beiträge
    427
    Zitat Zitat von mk Beitrag anzeigen
    Ich möchte wissen bevor ich eine Tabelle umstelle wie viele Änderungen an einer Table stattfinden
    Ich vermute, das dafür die Künstliche Inteligenz erfunden wurde.
    Hieß früher Glaskugel.

    Sorry ...

  8. #8
    Registriert seit
    Nov 2020
    Beiträge
    437
    Zusätzlich zur Glaskugel - die meist viel zu sehr Unterschätzt wird :-) - gibt es die Möglichkeit via ACS bei den Tabellen --> Rechts Klick --> Beschreibung --> Aktivität ... die Statistik der Operationen zu einer Tabelle anzusehen.
    Du kannst vorher mit Rechts Klick auf die Tabelle dies zurücksetzen lassen um nach z.B. 1 Tag oder Woche zu sehen wie es sich verhält.

  9. #9
    Registriert seit
    Sep 2005
    Beiträge
    427
    Zusätzlich zur Glaskugel - die meist viel zu sehr Unterschätzt wird :-) - gibt es die Möglichkeit via ACS bei den Tabellen --> Rechts Klick --> Beschreibung --> Aktivität ... die Statistik der Operationen zu einer Tabelle anzusehen.
    Das kann erfahrungsgemäß nur die Vergangenheit anzeigen!

  10. #10
    Registriert seit
    Nov 2020
    Beiträge
    437
    Zitat Zitat von ILEMax Beitrag anzeigen
    Das kann erfahrungsgemäß nur die Vergangenheit anzeigen!
    Außer du kombinierst es mit der Glaskugel

  11. #11
    Registriert seit
    Aug 2001
    Beiträge
    2.716
    geht auch ein Glasauge?
    IBM Champion 2022, 2023, 2024, 2025
    Common Europe Advisory Council / Hall of Fame
    http://pub400.com
    visit www.POWERbunker.com for bespoke IBM i hosting

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.790
    Problematisch sind aber auf jeden Fall Pseudoänderungen wie sie z.B. bei Infor XPPS angewendet werden.
    Dies gilt auch ins besonders bei Stammdaten.
    Bei jeder Veränderung von stammdatenbezogenen Werten, wird ein Update auf die Stammdaten mit User/Jobname gemacht, die nach dem Erfolg der Buchung wieder zurückgenommen wird.
    Dies ist halt der Nicht-SQL-Methode und dem Nichtwissen von Satzsperrlogiken geschuldet.
    Dies war auch das Problem des o.g. Journalversuches, dass ca. 10GB je Stunde an Journaldaten erzeugte.
    Bei Temporaltabellen muss man also höllisch aufpassen, dass auch nur tatsächliche Updates stattfinden.
    Sonst hast du plötzlich 100te Änderungen 1 Satzes pro Tag.

    Wenn man aber Bewegungswerte (Lagerbestand, Auftragsbestand o.ä.) in Stammdaten unterbringt sind Temporaltabellen nicht empfehlenswert. Hier muss man auf jeden Fall genau prüfen bevor man das umsetzt.

    Zur Auswertung solcher Änderungen ist hier tatsächlich nur ein Journal möglich, wie es Dieter schon beschrieben hat, da hiier nur auf Satzebene protokolliert wird. Auditjournale beobachten nur Objektveränderungen.
    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. Journalreceiver werden gelöscht
    By Hubert in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-09-21, 11:37
  2. Satzanzahl und gelöscht Sätze
    By Robi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 06-08-20, 17:33
  3. Trigger sperrt Datensatz
    By Peet in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 31-05-17, 11:41
  4. QCLSRC in allen Bibliotheken gelöscht !!!
    By brittner in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 20-02-15, 10:48
  5. 36er ID wird nicht gelöscht
    By Frank.Sobanek in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 16-04-02, 09:01

Tags for this Thread

Berechtigungen

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