Avatar billede thomasabcd Nybegynder
11. november 2006 - 01:09 Der er 2 kommentarer og
1 løsning

Slette eller markeret som slettet

Et hurtigt spm:

Er der en best practice mht. om man bør slette data i sin DB eller istedet sætte en property på rækken hvorvidt den skal markeres som "slettet" eller ej?
Avatar billede coderdk Praktikant
11. november 2006 - 01:11 #1
Kommer meget an på hvilket data det er :)
En alternativ løsning er at selecte den over i en slettet-tabel og slette den fra hovedtabellen :)
Avatar billede arne_v Ekspert
11. november 2006 - 01:32 #2
I langt de fleste tilfælde vil det være bedst at sætte et status flag til slettet.

Fordi som oftest vil der være nogle data der refererer til den række hvor du gerne vil beholde
de data.

Eksempel:

du har en lille e-shop

du sletter en bruger fordi han ikke betaler

så har du nogle gamle ordrer som refererer til hans kundenr

hvis du sletter de ordrer så stemmer dit salg ikke når du summerer

og din revisor står og siger at alt skal kunne genskabes 5 år tilbage i tiden
hvis told og skat kalder til torskegilde

status flag !
Avatar billede teepee Nybegynder
13. november 2006 - 09:49 #3
Man kan også gøre det transaktionsbaseret således, at hvis man opretter noget i én række, så sletter man det ved at indsætte en ny række, der fortæller at den første række er slettet, lidt ligesom der bliver hævet og indsat penge på en bankbog. Men det afhænger jo af data om det er anvendeligt. Hvis du er helt sikker på at data ALDRIG skal bruges mere (dvs. heller ikke har historisk værdi), så slet dem.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester