Wéi erstellt MySQL Sequenzen? MySQL Datebank Kreatioun Auto-Inkrement Sequenz Ausso

MySQLWéi eng Sequenz ze kreéieren?MySQL DatebankErstellt eng auto-incrementing Sequenz Ausso

MySQL Sequenz Benotzung

MySQL Sequenz ass eng Rei vun ganz Zuelen: 1, 2, 3, ..., well eng Datentabell nëmmen ee Feld Auto-Inkrement Primärschlëssel kann hunn, wann Dir automatesch Inkrement vun anere Felder wëllt erreechen, kënnt Dir MySQL Sequenz benotze fir erreechen.

An dësem Kapitel wäerte mir beschreiwen wéi Dir MySQL Sequenzen benotzt.


Benotzt AUTO_INCREMENT

Deen einfachste Wee fir Sequenzen a MySQL ze benotzen ass MySQL AUTO_INCREMENT ze benotzen fir Spalten ze definéieren.

Instanz

D'Datentabelle Insekt gëtt am folgende Beispill erstallt, wou kee Wäert fir automatesch Wuesstum uginn ass.

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   
     

  

Kritt AUTO_INCREMENT Wäert

Am MySQL Client kënnt Dir d'LAST_INSERT_ID () Funktioun an SQL benotzen fir de Wäert vun der leschter auto-inkrementéierter Kolonn an d'Tabell agefouert ze kréien.

Korrespondéiert Funktiounen ginn och am PHP- oder PERL-Skript zur Verfügung gestallt fir de Wäert vun der leschter Auto-Inkrement-Kolonn ze kréien, déi an d'Tabell agefouert gëtt.

Perl Beispill

Benotzt d'Mysql_insertid Eegeschafte fir de Wäert vun AUTO_INCREMENT ze kréien.Beispiller sinn wéi follegt:

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

PHP Beispill

PHP kritt de Wäert vun der AUTO_INCREMENT Kolonn an der ausgefouerter Insert SQL Ausso duerch d'mysql_insert_id () Funktioun.

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

Sequenz zrécksetzen

Wann Dir e puer Opzeechnungen an der Datentabelle läscht an d'AUTO_INCREMENT Kolonn vun de verbleiwen Donnéeën nei arrangéiere wëllt, kënnt Dir dat maachen andeems Dir d'Auto-inkrementéierend Kolonn läscht an se dann nach eng Kéier bäidréit.Allerdéngs muss dës Operatioun ganz virsiichteg sinn, wann iwwerhaapt.Zur selwechter Zäit vun der Läschung ginn nei Opzeechnunge bäigefüügt, an et kann Datenverwirrung ginn. D'Operatiounen sinn wéi follegt:

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

Setzt den Startwäert vun der Sequenz

Am Allgemengen ass de Startwäert vun der Sequenz 1, awer wann Dir e Startwäert vun 100 muss spezifizéieren, da kënne mir et mat der folgender Ausso maachen:

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 ; 
    
    
     
    
    

Oder Dir kënnt och déi folgend Ausso benotzen nodeems d'Tabelle erfollegräich erstallt gouf:

mysql > ALTER TABLE t AUTO_INCREMENT = 100 ; 

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) gedeelt "Wéi erstellt MySQL eng Sequenz? MySQL Datebank fir selbststeigend Sequenzerklärung ze kreéieren", fir Iech ze hëllefen.

Wëllkomm de Link vun dësem Artikel ze deelen:https://www.chenweiliang.com/cwl-498.html

Wëllkomm op dem Telegram Kanal vum Chen Weiliang säi Blog fir déi lescht Updates ze kréien!

🔔 Gitt deen Éischten dee wäertvollen "ChatGPT Content Marketing AI Tool Usage Guide" am Kanal Top Verzeechnes ze kréien! 🌟
📚 Dëse Guide enthält en enorme Wäert, 🌟 Dëst ass eng selten Geleeënheet, verpasst et net! ⏰⌛💨
Deelen a liken wann dir wëllt!
Är Deelen a Likes sinn eis kontinuéierlech Motivatioun!

 

Comments

Är E-Mail Adress gëtt net verëffentlecht. Néideg Felder gi benotzt * Etikett

scroll no uewen