Direktori Artikel
MySQLBagaimana untuk membuat urutan?pangkalan data MySQLBuat penyataan urutan kenaikan automatik
Penggunaan jujukan MySQL
Urutan MySQL ialah satu set integer: 1, 2, 3, ..., memandangkan jadual data hanya boleh mempunyai satu kunci utama kenaikan automatik medan, jika anda ingin mencapai kenaikan automatik medan lain, anda boleh menggunakan MySQL urutan untuk dicapai.
Dalam bab ini kita akan menerangkan cara menggunakan jujukan MySQL.
Gunakan AUTO_INCREMENT
Cara paling mudah untuk menggunakan jujukan dalam MySQL ialah menggunakan MySQL AUTO_INCREMENT untuk menentukan lajur.
contoh
Jadual data Serangga dicipta dalam contoh berikut, di mana tiada nilai ditentukan untuk pertumbuhan automatik.
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 秒)
Dapatkan nilai AUTO_INCREMENT
Dalam klien MySQL anda boleh menggunakan fungsi LAST_INSERT_ID() dalam SQL untuk mendapatkan nilai lajur auto-increment terakhir yang dimasukkan ke dalam jadual.
Fungsi yang sepadan juga disediakan dalam skrip PHP atau PERL untuk mendapatkan nilai lajur auto-increment terakhir yang dimasukkan ke dalam jadual.
Contoh PERL
Gunakan sifat mysql_insertid untuk mendapatkan nilai AUTO_INCREMENT.Contohnya adalah seperti berikut:
$ dbh - > do (“INSERT INTO insect(name,date,origin) VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };
Contoh PHP
PHP memperoleh nilai lajur AUTO_INCREMENT dalam pernyataan SQL sisipan yang dilaksanakan melalui fungsi mysql_insert_id().
mysql_query (“INSERT INTO昆虫(名字,日期,起源) VALUES('moth','2001-09-14','windowsill')“ ,$ conn_id ); $ seq = mysql_insert_id ($ conn_id );
set semula urutan
Jika anda memadamkan berbilang rekod dalam jadual data dan ingin menyusun semula lajur AUTO_INCREMENT bagi data yang tinggal, anda boleh berbuat demikian dengan memadamkan lajur kenaikan automatik dan kemudian menambahkannya semula.Walau bagaimanapun, operasi ini perlu berhati-hati, jika ada.Pada masa pemadaman yang sama, rekod baharu ditambah dan mungkin terdapat kekeliruan data. Operasi adalah seperti berikut:
mysql > ALTER TABLE昆虫DROP ID ; mysql > ALTER TABLE昆虫 - > ADD ID INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST ,- > ADD PRIMARY KEY (id );
Tetapkan nilai permulaan jujukan
Secara umum, nilai permulaan jujukan ialah 1, tetapi jika anda perlu menentukan nilai permulaan 100, maka kita boleh melakukannya dengan pernyataan berikut:
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 ;
Atau anda juga boleh menggunakan pernyataan berikut selepas jadual berjaya dibuat:
mysql > ALTER TABLE t AUTO_INCREMENT = 100 ;
Blog Harapan Chen Weiliang ( https://www.chenweiliang.com/ ) berkongsi "Bagaimana MySQL mencipta urutan? Pangkalan data MySQL untuk mencipta penyataan jujukan meningkat sendiri", untuk membantu anda.
Selamat datang untuk berkongsi pautan artikel ini:https://www.chenweiliang.com/cwl-498.html
Selamat datang ke saluran Telegram blog Chen Weiliang untuk mendapatkan kemas kini terkini!
📚 Panduan ini mengandungi nilai yang besar, 🌟Ini adalah peluang yang jarang berlaku, jangan lepaskan! ⏰⌛💨
Share dan like jika anda suka!
Perkongsian dan suka anda adalah motivasi berterusan kami!