Ergebnis 1 bis 3 von 3

Thema: Unreferenzierte Datensätze löschen

  1. #1
    DrMabuse ist offline Neuer Benutzer
    Registriert seit
    02.03.2010
    Beiträge
    2

    Standard Unreferenzierte Datensätze löschen

    Hallo allerseits!

    Um nicht mehr benötigte Datensätze zu löschen, d.h. Sätze auf die nicht (mehr) referenziert wird, nutze ich zzt. SQL. Bei größeren Datenmengen und vielen Tabellen wird dies jedoch zunehmend inperformant.

    Meine Überlegung ist, dass Postgres intern vermutlich weiß, ob bzw. wieviele Referenzen auf einen Datensatz bestehen (um die referenzielle Integrität zu bewahren). Wenn dies zutrifft, gibt es eine Möglichkeit diese Informationen abzufragen bzw. Postgres zu veranlassen, unreferenzierte Datensätze (aus einer bestimmten Tabelle) zu löschen?

    Meine bisherige Suche hierzu war leider ergebnislos, vielleicht weiß hier jemand mehr. Oder bin ich mit meiner Idee völlig auf dem Holzweg?

    MfG
    Dr. Mabuse

    P.S: Das unreferenzierte Sätze entstehen hat (gute) Gründe, die ich an dieser Stelle aber nicht diskutieren möchte.

  2. #2
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.465

    Standard

    Zitat Zitat von DrMabuse Beitrag anzeigen
    Hallo allerseits!

    Um nicht mehr benötigte Datensätze zu löschen, d.h. Sätze auf die nicht (mehr) referenziert wird, nutze ich zzt. SQL. Bei größeren Datenmengen und vielen Tabellen wird dies jedoch zunehmend inperformant.
    Was meint EXPLAIN ANAYSE dazu?

    Meine Überlegung ist, dass Postgres intern vermutlich weiß, ob bzw. wieviele Referenzen auf einen Datensatz bestehen (um die referenzielle Integrität zu bewahren).
    Nein. Das ist auch nicht nötig. Referenzielle Integrität bestät auch, wenn zu einem Datensatz mit Primary Key = X kein Datensatz einer anderen Tabelle besteht, der X als Foreign Key hat.

    Wenn dies zutrifft, gibt es eine Möglichkeit diese Informationen abzufragen bzw. Postgres zu veranlassen, unreferenzierte Datensätze (aus einer bestimmten Tabelle) zu löschen?

    Meine bisherige Suche hierzu war leider ergebnislos, vielleicht weiß hier jemand mehr. Oder bin ich mit meiner Idee völlig auf dem Holzweg?

    MfG
    Dr. Mabuse

    P.S: Das unreferenzierte Sätze entstehen hat (gute) Gründe, die ich an dieser Stelle aber nicht diskutieren möchte.
    Die Möglichkeiten, mit regulären SQL solch Datensätze zu finden sind Dir ja bekannt. was bleibt, bei Bedarf diesen Weg zu optimieren.


    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

  3. #3
    DrMabuse ist offline Neuer Benutzer
    Registriert seit
    02.03.2010
    Beiträge
    2

    Standard

    Schade, dann war ich wohl auf dem Holzweg. Danke für die schnell Antwort!

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 08.05.2010, 14:37
  2. Datensätze in DB senden
    Von veneror im Forum Allgemeines
    Antworten: 4
    Letzter Beitrag: 02.12.2009, 12:58
  3. Sequnecen löschen
    Von karl_ha im Forum Allgemeines
    Antworten: 5
    Letzter Beitrag: 11.11.2009, 09:33
  4. Datensätze löschen nicht möglich!
    Von Darian im Forum phpPGAdmin
    Antworten: 8
    Letzter Beitrag: 05.05.2008, 19:53
  5. Doppelte Datensätze löschen
    Von RainerB im Forum SQL
    Antworten: 4
    Letzter Beitrag: 04.08.2006, 11:30

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