Caratteristiche del campo automatico:
Sintassi:
Crea Table Table1Qui, Field1 è definito come campo di incremento automatico e il tipo di dati di questo campo può essere qualsiasi tipo di dati numerico come Int O Bigint. Non è obbligatorio definire il campo di incremento automatico come la chiave primaria. Ma può essere usato come chiave primaria per creare una relazione tra due tabelle.
Prerequisito:
Esegui i seguenti comandi SQL per creare un database chiamato 'Newdb'e selezionare il database per la creazione di tabelle con attributo di incremento automatico.
Crea database newDB;Crea una tabella con incremento automatico:
Esegui la seguente istruzione Crea per creare una tabella denominata studenti Dove id Il campo verrà creato con attributo automatico e impostato come chiave primaria. Successivamente, verranno eseguiti due tipi di dichiarazioni di inserto. Nella prima istruzione Insert, non viene menzionato alcun nome di campo nella query di insert e è necessario fornire tutti i valori di campo della tabella per questo tipo di inserimento. Qui, il null il valore viene utilizzato per id campo. Nella seconda istruzione Insert, tutti i campi ad eccezione del campo di incremento automatico sono menzionati nella query di inserto perché verrà generato automaticamente. Successivamente, l'istruzione SELECT viene eseguita per visualizzare il contenuto di studenti tavolo.
Crea studenti da tavolo (È possibile impostare manualmente il valore del campo di incremento automatico ma è necessario mantenere l'ordine sequenziale. Non è possibile impostare alcun valore inferiore all'ultimo valore inserito o uguale a qualsiasi valore esistente. La seguente prima istruzione di insert funzionerà correttamente perché l'ultimo valore inserito era 2. La seconda istruzione insert genererà un errore perché il valore 2 esiste già nella tabella.
Inserire nei valori degli studentiCrea una tabella con incremento automatico e zerofill non firmato:
In precedenza ha menzionato che il campo di incremento automatico inizia da 1 per impostazione predefinita. Ma se si utilizza l'attributo zerofill non firmato con campo di incremento automatico e si imposta la lunghezza del numero, il numero verrà generato con lo zero leader in base alla lunghezza. La seguente istruzione Crea creerà una tabella denominata insegnanti dove sono impostati gli attributi automatici e non firmati tch_id il campo e la lunghezza del campo è impostata su 4. Successivamente, alcuni dati verranno inseriti nella tabella mediante istruzione Insert e l'istruzione Select visualizzerà tutto il contenuto della tabella.
Crea insegnanti di tabelle (Qui, lo viene mostrato 0001, 0002 E 0003 sono generati come valori tch_id.
Ora, se si elimina l'ultimo record e si inserisce un nuovo record, un nuovo numero più il valore TCH_ID eliminato verrà generato come nuovo tch_id.
Elimina dagli insegnanti in cui tch_id = 3;Ripristino del campo di incremento automatico:
Se tutti i record vengono eliminati da insegnanti tabella che contiene il campo di incremento automatico quindi il nuovo Valore di tch_id sarà generato dopo l'ultimo valore inserito. Dopo aver eseguito le seguenti istruzioni SQL, verrà mostrato che i nuovi generati tch_id È 0005 Perché l'ultimo valore inserito era 0004.
Elimina dagli insegnanti;Se si desidera reimpostare la tabella e avviare nuovamente il valore da 1, è necessario eseguire l'istruzione Truncate anziché l'istruzione DELETE. Questo è mostrato nelle seguenti tre dichiarazioni.
Truncate Table Teachers;Otterrai il seguente output dopo aver eseguito le istruzioni.
Se si desidera modificare il valore predefinito dei campi di incremento automatico, è necessario eseguire l'istruzione Alter con l'avvio del valore di incremento automatico. Quindi, inserire un record e controllare il valore del campo di incremento automatico. Qui, il valore iniziale verrà impostato su 15.
Truncate Table Teachers;La seguente output apparirà dopo aver eseguito le istruzioni SQL sopra.
Conclusione:
Gli scopi dell'attributo di incremento automatico sono spiegati correttamente utilizzando le tabelle di esempio in questo articolo per aiutare l'utente MySQL a comprendere gli usi di questo attributo.