Ergebnis 1 bis 8 von 8

Thema: generischer feldzugriff möglich?

  1. #1
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard generischer feldzugriff möglich?

    hiho ..

    ist es in einer postgres-triggerfunktion (pl/pqsql) möglich generisch auf felder der getriggerten rows zuzugreifen?

    also nicht NEW.feld .. sondern in der art NEW.get('feldname') .. irgendwas in der art ..

    grüße

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Nein, das ist nicht möglich.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    nagut .. danke ..

  4. #4
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Nein, das ist nicht möglich.
    @ads: kennst Du hstore?

    Nein, ich hab damit auch noch nicht gespielt, aber Pavel Stehule:
    Pavel Stehule's blog: Dynamic access to record fields in PL/pgSQL

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  5. #5
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Kenne ich schon. Es gab zu dem Thema auch die ein oder andere Diskussion auf -hackers in letzter Zeit.

    Das Archiv wird da symbiont sicherlich weiterhelfen.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  6. #6
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    falls es interessiert ... ich wollte eine elegante moeglichkeit finden eine mehro der minder große menge bestimmter felder zu prüfen ob sie sich gaendert haben -> update trigger ..

    auch wenns mit der frage im topic noch wenig zu tun hat hier die loesung:

    Code:
    DECLARE changed BOOLEAN;
     ...
    BEGIN
     ...
       changed = 
          ROW(NEW.f3, NEW.f4, NEW.f7, ...)
          IS DISTINCT FROM
          ROW(OLD.f3, OLD.f4, OLD.f7, ...);
    Geändert von symbiont (18.11.2009 um 20:14 Uhr)

  7. #7
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von symbiont Beitrag anzeigen
    falls es interessiert ... ich wollte eine elegante moeglichkeit finden eine mehro der minder große menge bestimmter felder zu prüfen ob sie sich gaendert haben -> update trigger ..

    auch wenns mit der frage im topic noch wenig zu tun hat hier die loesung:

    Code:
    DECLARE changed BOOLEAN;
     ...
    BEGIN
     ...
       changed = 
          ROW(NEW.f1, NEW.f2, NEW.f3, ...)
          IS NOT DISTINCT FROM
          ROW(OLD.f1, OLD.f2, OLD.f3, ...);
    *gähn*

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  8. #8
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Das löst aber nicht das Problem, dass man die Spalten vorher kennen muss.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum