Pagina 1 din 1

Readaugare valoare stearsa in coloana ID Auto-Increment

Scris: Mie Oct 03, 2012
de bordanc_nicu
Salut!
Am sa zicem in baza de date tabela de useri cu ID-urile userilor ca si cheie primara, si am id-urile 1,2,3,etc.
Dar dintr-o anumita cauza, sa-i zicem un flood la inregistrari, am fost nevoit sa sterg conturile ne validate din acea baza de date.
Intre timp, s-au mai inregistrat useri care au ID-urile 10000, 10001, 10002, iar eu doresc sa resetez Auto Increment, ca sa se poata ocupa si randurile libere.
As dori sa stiu daca printr-o comanda s-ar putea returna prima valoare a unui rand inexistent /sters in acea tabela, urmand ca prin dezactivarea auto-increment, in fisierul de inregistrare, scriptul sa returneze o valoare inexistenta deja, pentru ca daca dezactivez autoincrement, in baza de date coloana ID va avea valoarea Null, deci scriptul va genera eroare.

Readaugare valoare stearsa in coloana ID Auto-Increment

Scris: Mie Oct 03, 2012
de MarPlo
Salut
Nu stiu cum se poate afla cel mai mic numar disponibil, care a fost sters dintr-o coloana ID Auto-Increment, dar se poate reseta valoarea de Auto Increment la un numar mai mic, folosind aceasta comanda SQL:

Cod: SelectaĊ£i tot

ALTER TABLE nume_tabel AUTO_INCREMENT = 1
Aces cod var reseta Auto Increment la 1, urmatorul nume fiind 2.
Iar din ce am gasit pe net, daca resetezi Auto increment la o valoare mai mica, de exemplu 5, dar exista deja ID-ul 6 si 7, apoi 10, 11, ... cica va continua cu urmatorul numar disponibil (8). Nu am testat, dar poti incerca..

O alta solutie, buna doar daca acel tabel nu e relationat prin coloana ID cu alt tabel, ar fi sa stergi doar coloana ID si apoi sa o re-creezi, tot Auto-Increment; va reface ID-uirile in ordine de la inceput.