Avatar billede Gertln Nybegynder
01. november 2012 - 10:13 Der er 5 kommentarer og
1 løsning

Sletning af data i PhpMyadmin

Hej,
hvis jeg skal slette data i en tabel, men beholde selve tabellen,  så der bare kan skrives nyt data i den, er det så truncate eller tøm tabellen jeg skal bruge ?
Det er et kunderegister i en netbutik, hvor jeg skal have slettet alle gamle kunder. Og nye kunder skulle jo gerne kunne oprette sig bagefter.
Avatar billede majbom Novice
01. november 2012 - 10:23 #1
hvis der ikke er nogle relationer til de data der ligger i tabellen nu kan du køre en truncate, så starter autonummering forfra
Avatar billede Gertln Nybegynder
01. november 2012 - 10:33 #2
Hej og og tak for svar. Mener du relationer til andre tabeller ?

Hvad er autonummering ?

Jeg har i første omgang prøvet at slette poster ved at markere dem og så slette dem. Det har ikke givet nogen problemer, der kan jeg sagtens oprette mig som kunde igen. Men truncate er måske ikke det samme ?
Avatar billede majbom Novice
01. november 2012 - 11:23 #3
dine kunder har meget sandsynligt et unikt id (plejer at være det første i tabellen og hedder som regel ID eller f.eks. CustomerID i dit tilfælde). Dette felt har autonummering på, så det automatisk får det næste ledige id i tabellen. Ikke at forstå på den måde at hvis du sletter en kunde, kan en anden få det samme id, det kan ikke "fås" igen. Kun hvis du truncater tabellen.

Derfor hvis dine nuværende kunder har ordrer, adresser osv. i andre tabeller, relaterer de til dette ID, og hvis der så kommer en ny kunde efter du har truncatet din tabel, vil de nye kunder have relationer til de gamle data i de andre tabeller

håber det gav mere mening :)
Avatar billede Gertln Nybegynder
01. november 2012 - 20:16 #4
Ok så tror jeg at jeg er med. Meningen er jo at gamle ordre også skal slettes, så det skulle være ok. Men hvis jeg overser en tabel med relation kan det jo give problemer, så det kunne være at jeg skulle slette i stedet for at truncate.

Mange tak for svar.

Hvordan giver jeg point ?
Avatar billede majbom Novice
01. november 2012 - 21:52 #5
ja, du kan jo bare køre
DELETE * FROM din_tabel


så fortsætter autonummeringen fra hvor den er nået til.

Jeg markerer denne kommentar som et svar, som du accepterer, så får jeg point :)
Avatar billede majbom Novice
02. november 2012 - 21:05 #6
tfp :)
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