Avatar billede delphimann Nybegynder
06. januar 2002 - 13:25 Der er 1 kommentar og
1 løsning

tæller kun op af glemmer de tal der ikke findes

Hej alle sammen

Jeg har en chat + dating system... og hvis folk ikke logger på i 3 måneder bliver de slettede.... men f.eks jeg en bruger med user ID 5 bliver slettede.... kommer user ID 5 aldrig i brug igen !??!... så min database ser sådan ud

1
2
5
12
osv.... kan jeg ikke gøre noget så alle talene bliver bruget
Avatar billede gimmy Nybegynder
06. januar 2002 - 13:29 #1
nej, ikke hvis du bruger auto_increment, men har du behov for det?

I stedet for at bruge MAX(id) for at finde antal brugere kan du bare bruge COUNT(id) - dette er bare et gæt på hvad dit reelle problem er :)
Avatar billede ezentia Nybegynder
09. januar 2002 - 09:03 #2
Du bør ikke genbruge \"gamle\" USER ID - såfremt du i dine øvrige tabeller anvender en relation som netop gør brug af dine user id, så vil det være trist at en ny bruger får tildelt et \"gammelt\" user id hvortil der er tilknyttet gammelt data.
Problemet er dog ikke så stort hvis du konsekvent rydder op i tabellerne såsnart du \"sletter\" en user id (for derved at undgå at have en korrupt db).

Det er ikke en god ide at anvende MAX(id) og COUNT(ID) ved udvælgelsen af et unikt ID. Dette er grundet \"race condintion\" problemet, som netop kan medføre at to forskellige brugere, i dette tilfælde, kan få det samme id. Dette er grundet at man ikke kan lave TRANSACTIONS o.lign i den nuværende version af MySQL.

Men...anvend blot auto_increment...i dit tilfælde er det ikke umiddelbart aktuelt at gøre det på anden vis.
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