In che modo MySQL crea sequenze? Istruzione della sequenza di incremento automatico della creazione del database MySQL

MySQLCome creare una sequenza?Database MySQLCrea un'istruzione di sequenza con incremento automatico

Utilizzo della sequenza MySQL

La sequenza MySQL è un insieme di numeri interi: 1, 2, 3, ..., poiché una tabella di dati può avere solo una chiave primaria di incremento automatico del campo, se si desidera ottenere l'incremento automatico di altri campi, è possibile utilizzare la sequenza MySQL per raggiungere.

In questo capitolo descriveremo come utilizzare le sequenze di MySQL.


Usa AUTO_INCREMENT

Il modo più semplice per utilizzare le sequenze in MySQL è utilizzare MySQL AUTO_INCREMENT per definire le colonne.

Esempio

La tabella dati Insect viene creata nell'esempio seguente, in cui non viene specificato alcun valore per la crescita automatica.

mysql > CREATE TABLE昆虫
     - > - > id INT UNSIGNED NOT NULL AUTO_INCREMENT - > PRIMARY KEY id ),- > name VARCHAR 30 NOT NULL #昆虫类型- > 日期DATE NOT NULL #收集日期- > origin VARCHAR 30 NOT NULL #where collected ); 查询OK 0 行受影响0.02 
mysql > 
    
    
     
     
    

 INSERT INTO insects id name date origin VALUES
     - > NULL 'housefly' '2001-09-10' 'kitchen' ),- > NULL 'millipede' '2001-09-10 ' '车道' ),- > NULL 'grasshopper' '2001-09-10' 'front yard' ); 查询OK  
     
     
 记录3 重复0 警告0 
mysql > 选择* 从昆虫ORDER BY ID ; + ---- + ------------- + ------------ + ------------ + | id | 名字         | 日期        | 起源      | + ---- + ------------- + ------------ + ------------ + | 1 | 家蝇     | 2001 - 09 - 10 | 厨房     | | 2 | 千足虫   
       



     
   | 2001 - 09 - 10 | 车道    | | 3 | 蚱蜢| 2001 - 09 - 10 | 前院| + ---- + ------------- + ------------ + ------------ + 3 0.00   
     

  

Ottieni il valore AUTO_INCREMENT

Nel client MySQL è possibile utilizzare la funzione LAST_INSERT_ID() in SQL per ottenere il valore dell'ultima colonna autoincrementata inserita nella tabella.

Nello script PHP o PERL sono inoltre fornite funzioni corrispondenti per ottenere il valore dell'ultima colonna autoincrementata inserita nella tabella.

Istanza PERL

Utilizzare la proprietà mysql_insertid per ottenere il valore di AUTO_INCREMENT.Gli esempi sono i seguenti:

$ dbh - > do “INSERT INTO insect(name,date,origin) 
VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };

Esempio PHP

PHP ottiene il valore della colonna AUTO_INCREMENT nell'istruzione insert SQL eseguita tramite la funzione mysql_insert_id().

mysql_query “INSERT INTO昆虫(名字,日期,起源)
VALUES('moth','2001-09-14','windowsill')“ $ conn_id ); 
$ seq = mysql_insert_id $ conn_id );

sequenza di ripristino

Se elimini più record nella tabella dei dati e desideri riorganizzare la colonna AUTO_INCREMENT dei dati rimanenti, puoi farlo eliminando la colonna con incremento automatico e aggiungendola di nuovo.Tuttavia, questa operazione deve essere molto attenta, se c'è.Contestualmente alla cancellazione vengono aggiunti nuovi record e potrebbe esserci confusione nei dati.Le operazioni sono le seguenti:

mysql > ALTER TABLE昆虫DROP ID ; 
mysql > ALTER TABLE昆虫
     - > ADD ID INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST - > ADD PRIMARY KEY id );
    

Imposta il valore iniziale della sequenza

In generale, il valore iniziale della sequenza è 1, ma se è necessario specificare un valore iniziale di 100, possiamo farlo con la seguente istruzione:

mysql > CREATE TABLE昆虫
     - > - > id INT UNSIGNED NOT NULL AUTO_INCREMENT - > PRIMARY KEY id ),- > name VARCHAR 30 NOT NULL - > date DATE NOT NULL - > origin VARCHAR 30 NOT NULL
 engine = innodb auto_increment = 100 charset = utf8 ; 
    
    
     
    
    

Oppure puoi anche utilizzare la seguente istruzione dopo che la tabella è stata creata correttamente:

mysql > ALTER TABLE t AUTO_INCREMENT = 100 ; 

Speranza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) condiviso "Come fa MySQL a creare una sequenza? Database MySQL per creare istruzioni di sequenza autoincrementanti", per aiutarti.

Benvenuti a condividere il link di questo articolo:https://www.chenweiliang.com/cwl-498.html

Benvenuto nel canale Telegram del blog di Chen Weiliang per ricevere gli ultimi aggiornamenti!

🔔 Sii il primo a ricevere la preziosa "Guida all'utilizzo dello strumento AI di marketing dei contenuti ChatGPT" nella directory principale del canale! 🌟
📚 Questa guida contiene un valore enorme, 🌟Questa è un'opportunità rara, non perderla! ⏰⌛💨
Condividi e metti mi piace se ti va!
La tua condivisione e i tuoi like sono la nostra continua motivazione!

 

发表 评论

L'indirizzo email non verrà pubblicato. 必填 项 已 用 * 标注

滚动 到 顶部