Articulu Directory
MySQLCumu creà una sequenza?basa di dati MySQLCrea una dichjarazione di sequenza auto-incrementante
Usu di sequenza MySQL
A sequenza di MySQL hè un inseme di numeri interi: 1, 2, 3, ..., postu chì una tavola di dati pò avè solu una chjave primaria d'incrementu automaticu di u campu, se vulete ottene un incrementu automaticu di altri campi, pudete aduprà u MySQL. sequenza da ottene.
In questu capitulu, descriveremu cumu utilizà e sequenze MySQL.
Utilizà AUTO_INCREMENT
A manera più faciule d'utilizà sequenze in MySQL hè di utilizà MySQL AUTO_INCREMENT per definisce e colonne.
Istanza
A tabella di dati Insect hè creatu in l'esempiu seguente, in quale nisun valore hè specificatu per a 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 秒)
Ottene u valore AUTO_INCREMENT
In u cliente MySQL pudete aduprà a funzione LAST_INSERT_ID () in SQL per uttene u valore di l'ultima colonna auto-incrementata inserita in a tavula.
E funzioni currispundenti sò ancu furnite in u script PHP o PERL per uttene u valore di l'ultima colonna auto-incrementata inserita in a tavula.
esempiu PERL
Aduprate a pruprietà mysql_insertid per uttene u valore di AUTO_INCREMENT.Esempii sò i seguenti:
$ dbh - > do (“INSERT INTO insect(name,date,origin) VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };
PHP esempiu
PHP ottene u valore di a colonna AUTO_INCREMENT in a dichjarazione SQL inserita eseguita attraversu a funzione mysql_insert_id ().
mysql_query (“INSERT INTO昆虫(名字,日期,起源) VALUES('moth','2001-09-14','windowsill')“ ,$ conn_id ); $ seq = mysql_insert_id ($ conn_id );
reset sequenza
Se sguassate parechji registri in a tavula di dati è vulete rearrange a colonna AUTO_INCREMENT di i dati rimanenti, pudete fà cusì sguassendu a colonna d'autu-incrementing è aghjunghjendu di novu.Tuttavia, sta operazione deve esse assai attenti, se ci hè.À u listessu tempu di sguassà, i novi registri sò aghjuntu, è pò esse cunfusione di dati. L'operazioni sò i seguenti:
mysql > ALTER TABLE昆虫DROP ID ; mysql > ALTER TABLE昆虫 - > ADD ID INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST ,- > ADD PRIMARY KEY (id );
Stabilite u valore iniziale di a sequenza
In generale, u valore iniziale di a sequenza hè 1, ma se avete bisognu di specificà un valore iniziale di 100, pudemu fà cù a seguente dichjarazione:
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 ;
O pudete ancu aduprà a seguente dichjarazione dopu chì a tavola hè stata creata bè:
mysql > ALTER TABLE t AUTO_INCREMENT = 100 ;
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) spartutu "Cumu MySQL crea una sequenza? A basa di dati MySQL per creà una dichjarazione di sequenza autoincrementante ", per aiutà.
Benvenuti à sparte u ligame di stu articulu:https://www.chenweiliang.com/cwl-498.html
Benvenuti à u canali Telegram di u blog di Chen Weiliang per avè l'ultime aghjurnamenti!
📚 Questa guida cuntene un valore enormu, 🌟Questa hè una rara opportunità, ùn mancate micca! ⏰⌛💨
Condividi è mi piace se ti piace!
A vostra spartera è Mi piace sò a nostra motivazione cuntinua!