Mam sobie bazę danych, powiedzmy 50 000 rekordów.
1. dnia robię import z pliku .sql gdzie jest 50 001 rekordów z czego jeden nowy. Plik .sql zawiera wiersze "INSERT IGNORE..." Jeden nowy rekord jest w bazie ale z ID 100 001 a nie 50 001.
2. Dnia robię import z kolejnego pliku .sql. Jest w nim 50 003 rekordów. 50 001 już mam w bazie. Też kwerendy INSERT IGNORE. Po 100 001 mam ID 150 002 i 150 003 zamiast 100 002. Dlaczego to tak rośnie? Co zrobić, żeby ID szły kolejno tj 50 001, 50 002, 50 003 itp?
Jedna kwestia, to zwiększanie pola autonumer nawet w przypadku niewstawienia klucza ze względu na naruszenie więzów klucza unikalnego: https://stackoverflow.com/a/5655448
Druga, to fakt, że wstawiasz własne id.
Id klucza nie musi być ciągłe, nie ma to kompletnie znaczenia.
Nie musisz w wstawiać rekordów wraz z ich id, chyba, że wstawiasz również do innej tabeli w relacji.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)