Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    101

    Resettare l'Auto_Increment di un campo.

    Ciao,
    prima o poi la st......a la dovevo fare!

    Ho cancellato per errore i dati da una tabella (per fortuna non kilometrica (70 rows)) col 'DELETE.......'.
    Ho reinserito i dati , ma noto che la colonna 'id' settata come 'Auto_Increment'
    mi riparte dalla prima riga con valore di 'id' 71.

    Come faccio a far ripartire i valori di 'id' da 1 ?

    Conosco il percorso del 'TRUNCATE table_name', ma mi toccherebbe ricancellare tutti i dati di tabella e poi rireinserirli ancora una volta.

    Conoscete un'altra strada più rapida ed efficace?

    Grazie per ora.

  2. #2
    ci dovrebbe essere un comando all'interno del menu "operazioni" nel pannello di gestione mysql, cambi il valore dell'id autoincremental, lo setti al valore che ti interessa e premi esegui

  3. #3
    Utente di HTML.it L'avatar di Ranma2
    Registrato dal
    Mar 2003
    Messaggi
    2,648
    ALTER TABLE nometabella AUTO_INCREMENT = valore;

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    101
    Ciao,

    ALTER TABLE nometabella AUTO_INCREMENT = valore;
    niente, ho provato la tua soluzione in diverse forme ma non cambia niente.

  5. #5
    so che può essere scomodo da fare, ma, crea una tabella nuova con la stessa struttura della vecchia e poi fai:

    INSERT INTO tabella_nuova (Campo1, campo2, ...) SELECT (Campo1, campo2, ...) FROM tabella_vecchia


    ovviamente escludi i campi "ID"... e così avrai i tuoi indici con partenza da 1... (visto che il comando "ALTER TABLE `tbutenti` AUTO_INCREMENT = 1" non ti funziona!).

    Infine, droppi la tabella vecchia e rinomini la nuova con lo stesso nome della vecchia (che hai droppato in precendenza).


    Procedura macchinosa, ma sicuramente funziona e non perdi i dati se fai tutto bene.
    ... :master: riconosco l'esistenza di un limite a tutto , ma non l'accetto ...

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    se hai phpmyadmin basta parire la tabella e andare nelle voce operazioni, li hai un box che indica il valore autoinc della tabella....basta risettarlo

    se no con questa query

    ALTER TABLE LaTuaTabella AUTO_INCREMENT=1

    lo risetti a 1

    ciao
    ciAo

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    101
    Ciao a tutti,
    masterix21:

    INSERT INTO tabella_nuova (Campo1, campo2, ...) SELECT (Campo1, campo2, ...) FROM tabella_vecchia
    Avevo intrapreso questa strada che mi sembrava la più efficace.

    d@niele:

    ALTER TABLE LaTuaTabella AUTO_INCREMENT=1
    Ho provato inizialmente questo metodo ma non cambiava nienta, con il dato posto in questo modo era come se dichiarassi la colonna AUTO_INCREMENT=true ed era già true.

    Grazie a tutti, problema risolto
    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.