Bahar: Daten unreel loeschen?

Hi alle zusammen hab da mal eine eher Verständnisfrage. Also ich habe eine Datenbank mit verschiedenen Tabellen benutzertable,ordnertable,registertable. So ich habe eine Methode welches den Ordner , Register, Benutzer löscht. Mir wurde jetzt aber gesagt ich soll diese Methoden umschreiben, unszwar sollen meine Datensätze nicht mit delete gelöscht werden, sondern nur auf "gelöscht" setzen. Da es halt vorkommen kann, dass ein Ordner plötzlich nach Wochen wiederhergestellt werden muss, darf ich diese nicht aus der Datenbank löschen, aber sie dürfen in meinem Skript nicht mehr eingesehen werden so als wären sie gelöscht. Wie kann ich meine Datensätze auf gelöscht setzen ohne diese wirklich aus der Datenbank zu löschen. Also wie kann ich mir das vorstellen gibts da ein SQL Befehl oder so?

  1. Hallo Bahar,

    du nimmst einfach ein zusätzliches Feld, aus dem hervorgeht, ob ein Datensatz als gelöscht gilt oder nicht. Zum Löschen setzt Du dieses Feld auf Deinen „gelöscht“-Status. Bei allen Leseoperationen beschränkst Du das Ergebnis auf die nicht gelöschten Datensätze.

    Gruß
    Olaf

    1. Hallo,

      du nimmst einfach ein zusätzliches Feld, aus dem hervorgeht, ob ein Datensatz als gelöscht gilt oder nicht. Zum Löschen setzt Du dieses Feld auf Deinen „gelöscht“-Status. Bei allen Leseoperationen beschränkst Du das Ergebnis auf die nicht gelöschten Datensätze.

      ... und fügst mindestens eine zusätzliche Sicht ein, diedie "gelöschten" Datensätze sortierbar nach dem Löschzeitpunkt (siehe Cheatah), filterbar nach dem Verursacher, nach dem Dokumentnamen, der Dokumentklasse und was Du Dir sonst noch vorstellen kannst ...

      Also überlege zuerst, welche weiteren Konsequenzen es haben muss, wenn Du "Delete" und "Purge" voneinander trennst.

      Gesundheit!
      Dr. Bit

  2. Hallo!

    Also wie kann ich mir das vorstellen gibts da ein SQL Befehl oder so?

    Nö. Hänge an die Tabelle ein Boolean Attribut "deleted", das standardmäßig false ist. Wenn jetzt der Eintrag gelöscht werden soll setze in auf true und beachte das Attribut beim Auslesen der Datensätze.

    mfg
      frafu

    1. Hi,

      Hänge an die Tabelle ein Boolean Attribut "deleted", das standardmäßig false ist.

      oder NULL. Das hat den Vorteil, dass man in der Spalte nebenbei den Löschzeitpunkt unterbringen kann.

      Ich bitte übrigens die juristischen Implikationen zu bedenken. U.U. besteht nicht das Recht, den Datensatz dauerhaft beizubehalten.

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. Hello,

        Ich bitte übrigens die juristischen Implikationen zu bedenken. U.U. besteht nicht das Recht, den Datensatz dauerhaft beizubehalten.

        ich bitte übrigens die juristischen Implikationen zu bedenken. U.U. besteht nicht das Recht, den Datensatz einfach so zu löschen :-)

        MfG
        Rouven

        --
        -------------------
        sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
        Let Bygones Be Bygones  --  Robert Pitscottie: "Chronicles of Scotland"
        1. Um mal ein wenig Butter bei die Sachverhalte zu geben: wir haben einerseits den Tatbestand der unberechtigten Datenerhebung bzw. -speicherung aus dem Datenschutzgesetz und andererseits den der Urkundenunterdrückung in dem Fall, dass die gespeicherten Daten einen Urkundencharakter haben...

          Gruß, LX

          --
          X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
          X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
          X-Will-Answer-Email: Unusual
          X-Please-Search-Archive-First: Absolutely Yes
          1. Hallo,

            Um mal ein wenig Butter bei die Sachverhalte zu geben: wir haben einerseits den Tatbestand der unberechtigten Datenerhebung bzw. -speicherung aus dem Datenschutzgesetz und andererseits den der Urkundenunterdrückung in dem Fall, dass die gespeicherten Daten einen Urkundencharakter haben...

            Und wir haben drittens die Möglichkeit der Kompetenzüberschreitung, von Racheakten oder einfach nur Dummheit durch den Bediener / die Bedienerin.

            Das kommt in real existenten Firmen öfter vor, als manche Gutmenschen überhaupt zu glauben wagen.

            Gesundheit!
            Dr. Bit

  3. Hi Bahar!

    Ich weiß ja nicht, wie es den anderen geht, aber wenn ich ein Konto bzw. einen Account auflöse, ist es OK, wenn mich darauf hinweist, dass die Daten unwiderruflich gelöscht werden.
    Allerdings möchte ich dann auch, das sie gelöscht werden. [1]

    Wie komme ich mir denn vor, wenn da steht:
    "Dieser Service richtet sich an Politiker. Sie halten sich alle Wege offen."
    Verarscht käme ich mir vor.
    Moment... Soll eine deutsche Seite werden, was? Lass es so. Dann fühl´ ich mich heimisch.

    ;-)

    [1] Oder ich habe die Wahl. Auf jeden Fall musst du den Nutzer darauf hinweisen, was passiert.

    MfG H☼psel

    --
    "It's amazing I won. I was running against peace, prosperity, and incumbency."
    George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
    Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)