Pagina 1 van 1
MySQL vraagje
Geplaatst: 04 okt 2014, 23:16
door krisken
Ik heb momenteel het volgende "probleem", misschien dat iemand hier het antwoord kent
In een MySQL database krijgt elke datarij een uniek ID (type : INT, lengte : 11, auto_increment aan).
Normaliter krijgt de eerste datarij dus het ID1, de tweede datarij het ID2, etc etc etc.
Nu heb ik via phpmyadmin alle testdata verwijderd, en dacht ik dat MySQL terug zou beginnen tellen vanaf ID1.
Helaas verkeerd gedacht : ondanks dat alles leeg is, telt MySQL vrolijk verder vanaf het vorige nummer (57 in dit geval).
Iemand een idee hoe ik dit kan voorkomen?
Merci!
Re: MySQL vraagje
Geplaatst: 04 okt 2014, 23:26
door xming
Re: MySQL vraagje
Geplaatst: 04 okt 2014, 23:31
door FunkStar
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 00:26
door ITnetadmin
Waarom de aanpassing, als ik vragen mag?
[
Post made via mobile device ]
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 00:29
door krisken
Omdat ik graag terug vanaf ID1 wil beginnen.
Dit omdat het ID publiek word gemaakt en het nogal raar overkomt dat je bvb ID 40202 krijgt als eerste inschrijving (fictief).
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 10:40
door xming
IMHO het is nooit een goed idee om auto increament terug te draaien tenzij je volledig opnieuw begint (dan kan je ook best drop table doen) of je weet echt waar je ermee bezig bent.
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:15
door ubremoved_539
krisken schreef:Dit omdat het ID publiek word gemaakt
Regel nummer één in databases... het auto increment veld mag NOOIT een "functionele" toepassing hebben en dus al zeker nooit zichtbaar zijn.
Dergelijke velden zijn om relaties te leggen in je database en niets anders.... zoniet ga je vroeg of laat veel ellende hebben.
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:28
door ITnetadmin
Ben daar ook geen fan van. Doe een eigen telling.
[
Post made via mobile device ]
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:37
door krisken
Ik zal het kort even omschrijven...
Ongeveer een jaar terug heb ik (samen met een ander persoon) iets in elkaar gebokst om een messageparty te organiseren (op vraag van een jongerenvereniging). Dit werkt met een raspberry pi en een 3G stick.
Om je te registreren stuur je "reg <naam> <email> naar het nummer van de SIM kaart in je 3G stick. Zo zal je geregistreerd worden in de database.
Op dat moment stuurt de SMS gateway 2 smsjes:
- 1 naar de organisator : Nieuwe gebruiker : {NAAM} met gsm nr {GSMNR} en email {EMAIL} is ingeschreven met volgnummer {VOLGNR}.
- 1 naar de geregistreerde : 'U bent geregisteerd in het systeem, U kunt uw nummer afhalen bij de inkom.'
In het controlpanel moet de organisator aanvinken dat de geregistreerde is langs geweest en hij/zij zijn nummer heeft ontvangen. Vanaf dan kan het lid smsjes sturen met het keyword "chat" (je boodschap word voorafgegaan door je nummer) of "pvt" (private message : je boodschap word voorafgegaan door het woord "private").
Het nummer dat je krijgt is eigenlijk het ID in de database.
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:38
door ITnetadmin
Als het niet echt uitmaakt kan je het van mij gerust doen.
Als het om een userlist gaat die permanenter is, raad ik niet aan om een volgnummer auto increment te maken.
[
Post made via mobile device ]
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:41
door krisken
Probleem is dat het nu reeds te laat is : tis al gemaakt en werkte vorig jaar perfect. Echter wilt men nu opnieuw die messageparty doen. Dus ik heb de SD kaart even terug opgezocht, alle db's geledigd en ik dacht dat het nu vanaf 1 terug zou beginnen. Helaas...
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 16:55
door ITnetadmin
Ik zeg het nogmaals: als het niet over een permanente db gaat (je kan hem na ieder gebruik wissen) maakt het niet echt uit. Als het echt een probleem moest geven moet je de db structuur maar eens in sql exporteren en editen, dan kan je hem elk jaar van nul opbouwen.
[
Post made via mobile device ]
Re: MySQL vraagje
Geplaatst: 05 okt 2014, 17:07
door krisken
Mysterie opgelost : gewoon in phpmyadmin de tabellen aanvinken en dan klikken op "legen". En je begint terug op 1

Voor wie interesse heeft zal ik straks eens de demo online zetten op Userbase...