[MySQL] Reset Autoincrement

Pagina: 1
Acties:
  • 167 views sinds 30-01-2008
  • Reageer

  • Darkvater
  • Registratie: Januari 2001
  • Laatst online: 26-08-2024

Darkvater

oh really?

Topicstarter
Ik heb in me Database een Auto_Increment veld. Nou heb ik er mee zitten klooien, en steeds empty gedaan, maar die auto_increment gaat niet terug naar 0.

Nu heb ik gezocht, en dit gevonden:
You can reset an auto_increment field in mySQL by using the following syntax:
code:
1
alter table <tablename> auto_increment = #;
Where # is an integer value.
Dit dus gedaan, ook gelukt, maar de auto_increment is niet teruggegaan naar 0 (als ik dan 0 voor # invul). Hoe moet het nou?

Het is een InnoDB table en ik wil de key resetten, heeft misschien dat ermee te maken?


Windows Vista? *NEVER* Het waarom - Opera forever!!!
I've seen chickens that were more menacing. Chickens in a coma. On ice. In my fridge


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Waarom wil je die key resetten? Een primary key zou geen betekenis mogen hebben, dus het zou niet mogen uitmaken of het de PK nu 1 of 2 of 2999 is.

Je kan het resetten (heb het eens tegengekomen p het forum), maar ik weet niet precies hoe. Gebruik anders de search eens, er zijn de laatste tijd nogal van deze topics langsgekomen.

https://fgheysels.github.io/


  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 19-05 09:52

thomaske

» » » » » »

is al erg vaak voorbij gekomen, en al erg vaak op geantwoord. Komt er grofweg op neer, dat het niet nodig moet zijn om dat te resetten! ;)

(volgens mij werkt "DELETE FROM [table]" wel)

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
DELETE FROM table gaat niet werken.
Als je bv 5 records hebt in die tabel met een PK van 1 tem 5, en je verwijdert alle records, dan gaat de pk van het eerstvolgende record dat je toevoegt 6 zijn.

https://fgheysels.github.io/


  • Darkvater
  • Registratie: Januari 2001
  • Laatst online: 26-08-2024

Darkvater

oh really?

Topicstarter
Nee, hoeft idd niet, maarja, ik heb liever dat ie vanaf 1 begint :)

Delete Table verwijdert alles, maar de auto_increment wordt niet gereset.


Windows Vista? *NEVER* Het waarom - Opera forever!!!
I've seen chickens that were more menacing. Chickens in a coma. On ice. In my fridge


  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 19-05 09:52

thomaske

» » » » » »

andere oplossing is om de tabel te droppen en weer te createn :)

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Verwijderd

En eerst deleten en dan alter table autoincrement = 0?

  • Darkvater
  • Registratie: Januari 2001
  • Laatst online: 26-08-2024

Darkvater

oh really?

Topicstarter
thomaske schreef op 24 oktober 2002 @ 15:46:
andere oplossing is om de tabel te droppen en weer te createn :)
alles met de hand? Damn, dat is niet zo fijn :(


Windows Vista? *NEVER* Het waarom - Opera forever!!!
I've seen chickens that were more menacing. Chickens in a coma. On ice. In my fridge


  • Theguide
  • Registratie: December 2000
  • Laatst online: 26-06-2025
wat dacht je van om ipv de 0 een 1 te doen???
Een id van 0 heb ik namelijk nog nooit gezien.....

Fuck me if I'm wrong, but isn't your name Gretchen?


  • Darkvater
  • Registratie: Januari 2001
  • Laatst online: 26-08-2024

Darkvater

oh really?

Topicstarter
Theguide schreef op 24 oktober 2002 @ 16:04:
wat dacht je van om ipv de 0 een 1 te doen???
Een id van 0 heb ik namelijk nog nooit gezien.....
werkt ook niet :'(

Eureka! Gevonden :)
If you wish to reset the AUTO_INCREMENT column of a MyISAM table, issue a DELETE FROM tablename command. This will reset the counters, and they will start over from 1.

If you need to reset the counter on InnoDB tables, you will need to either drop and recreate the table (v. 3.23); use TRUNCATE TABLE (v. 4) or delete all rows from the table, then restart the server.
Dus wat ik heb gedaan, is TRUNCATE TABLE (drop en recreate), en daarna mysql opnieuw opstarten, en de auto_increment van me InnoDB table is weer op 1 :)

Dank U _/-\o_

[ Voor 0% gewijzigd door Darkvater op 24-10-2002 16:08 . Reden: gevonden ]


Windows Vista? *NEVER* Het waarom - Opera forever!!!
I've seen chickens that were more menacing. Chickens in a coma. On ice. In my fridge


Verwijderd

je kan toch ff een mysql-dump maken
dan een drop van je table
en die dump weer terugzetten?

klaar is kees

  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Darkvater schreef op 24 oktober 2002 @ 16:05:
Dus wat ik heb gedaan, is TRUNCATE TABLE (drop en recreate), en daarna mysql opnieuw opstarten, en de auto_increment van me InnoDB table is weer op 1 :)
Sorry, is TRUNCATE hetzelfde als drop en recreate?? :?
Of is dat een MySQL feature?

Never underestimate the power of


  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 30-03 17:41
cameodski schreef op 24 oktober 2002 @ 18:10:
[...]

Sorry, is TRUNCATE hetzelfde als drop en recreate?? :?
Of is dat een MySQL feature?
Lezen is ook een vak...
[...]
either drop and recreate the table (v. 3.23); use TRUNCATE TABLE (v. 4)
[...]
Bovenstaande geldt voor InnoDB zut, als je gewone MyISAM tables hebt werkt DELETE FROM table; zonder WHERE dus ook gewoon.

  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Uhhhm, je hebt gelijk, ik had alleen de opmerking van Darkvater gelezen en die deed alsof het hetzelfde was, maar dat was blijkbaar een vrije vertaling of een beetje verkeerde interpretatie van mijn kant.

Never underestimate the power of

Pagina: 1