Artikel Directory
MySQLHoe maak je een reeks?MySQL-databaseEen automatisch oplopende volgorde-instructie maken
MySQL-reeksgebruik
MySQL-reeks is een reeks gehele getallen: 1, 2, 3, ..., aangezien een gegevenstabel slechts één primaire sleutel voor automatische verhoging van velden kan hebben. Als u automatische verhoging van andere velden wilt bereiken, kunt u de MySQL-reeks gebruiken om bereiken.
In dit hoofdstuk zullen we beschrijven hoe u MySQL-reeksen gebruikt.
Gebruik AUTO_INCREMENT
De eenvoudigste manier om reeksen in MySQL te gebruiken, is door MySQL AUTO_INCREMENT te gebruiken om kolommen te definiëren.
Voorbeeld
De gegevenstabel Insect is gemaakt in het volgende voorbeeld, waar geen waarde is opgegeven voor automatische groei.
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 秒)
AUTO_INCREMENT waarde ophalen
In de MySQL-client kunt u de functie LAST_INSERT_ID() in SQL gebruiken om de waarde van de laatste automatisch oplopende kolom in de tabel te krijgen.
Overeenkomstige functies zijn ook beschikbaar in het PHP- of PERL-script om de waarde te verkrijgen van de laatste auto-increment-kolom die in de tabel is ingevoegd.
PERL-instantie
Gebruik de eigenschap mysql_insertid om de waarde van AUTO_INCREMENT op te halen.Voorbeelden zijn als volgt:
$ dbh - > do (“INSERT INTO insect(name,date,origin) VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };
PHP voorbeeld
PHP verkrijgt de waarde van de AUTO_INCREMENT-kolom in de uitgevoerde insert SQL-instructie via de functie mysql_insert_id().
mysql_query (“INSERT INTO昆虫(名字,日期,起源) VALUES('moth','2001-09-14','windowsill')“ ,$ conn_id ); $ seq = mysql_insert_id ($ conn_id );
volgorde resetten
Als u meerdere records in de gegevenstabel verwijdert en de kolom AUTO_INCREMENT van de resterende gegevens opnieuw wilt rangschikken, kunt u dit doen door de kolom voor automatisch ophogen te verwijderen en deze vervolgens opnieuw toe te voegen.Deze operatie moet echter heel voorzichtig zijn, als die er is.Tegelijkertijd met het verwijderen worden nieuwe records toegevoegd en kan er gegevensverwarring ontstaan. De bewerkingen zijn als volgt:
mysql > ALTER TABLE昆虫DROP ID ; mysql > ALTER TABLE昆虫 - > ADD ID INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST ,- > ADD PRIMARY KEY (id );
Stel de startwaarde van de reeks in
Over het algemeen is de startwaarde van de reeks 1, maar als u een startwaarde van 100 moet opgeven, kunnen we dit doen met de volgende instructie:
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 ;
Of u kunt ook de volgende instructie gebruiken nadat de tabel met succes is gemaakt:
mysql > ALTER TABLE t AUTO_INCREMENT = 100 ;
Hoop Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Hoe maakt MySQL een reeks? MySQL-database om zelfophogende volgorde-instructies te maken", om u te helpen.
Welkom om de link van dit artikel te delen:https://www.chenweiliang.com/cwl-498.html
Welkom op het Telegram-kanaal van Chen Weiliang's blog voor de laatste updates!
📚 Deze gids bevat enorme waarde, 🌟Dit is een zeldzame kans, mis hem niet! ⏰⌛💨
Deel en like als je wilt!
Uw delen en likes zijn onze voortdurende motivatie!