MySQL dizileri nasıl oluşturur? MySQL veritabanı oluşturma otomatik artış dizisi ifadesi

MySQL'de sıralı işlem nasıl oluşturulur ? MySQL veritabanında otomatik artan sıralı işlem oluşturmak için kullanılan ifadeler .

MySQL dizisi kullanımı

MySQL dizisi bir tamsayılar kümesidir: 1, 2, 3, ..., bir veri tablosu yalnızca bir alan otomatik artış birincil anahtarına sahip olabileceğinden, diğer alanların otomatik artışını elde etmek istiyorsanız, MySQL dizisini kullanabilirsiniz. başarmak.

Bu bölümde MySQL dizilerinin nasıl kullanılacağını anlatacağız.


AUTO_INCREMENT kullan

MySQL'de dizileri kullanmanın en kolay yolu, sütunları tanımlamak için MySQL AUTO_INCREMENT kullanmaktır.

Örnek

Böcek veri tablosu, otomatik büyüme için hiçbir değerin belirtilmediği aşağıdaki örnekte oluşturulmuştur.

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 değerini al

MySQL istemcisinde, tabloya eklenen son otomatik artan sütunun değerini almak için SQL'deki LAST_INSERT_ID() işlevini kullanabilirsiniz.

Tabloya eklenen son otomatik artış sütununun değerini elde etmek için PHP veya PERL komut dosyasında karşılık gelen işlevler de sağlanır.

PERL örneği

AUTO_INCREMENT değerini almak için mysql_insertid özelliğini kullanın.Örnekler aşağıdaki gibidir:

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

PHP örneği

PHP, yürütülen SQL deyimindeki AUTO_INCREMENT sütununun değerini mysql_insert_id() işlevi aracılığıyla alır.

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

sıfırlama sırası

Veri tablosundaki birden fazla kaydı silerseniz ve kalan verilerin AUTO_INCREMENT sütununu yeniden düzenlemek isterseniz, bunu otomatik artan sütunu silip yeniden ekleyerek yapabilirsiniz.Ancak, bu işlem hiç değilse çok dikkatli olmalıdır.Silme anında yeni kayıtlar eklenir ve veri karışıklığı olabilir.İşlemler şu şekildedir:

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

Dizinin başlangıç ​​değerini ayarlayın

Genel olarak dizinin başlangıç ​​değeri 1'dir, ancak 100'lük bir başlangıç ​​değeri belirtmeniz gerekiyorsa, bunu aşağıdaki ifadeyle yapabiliriz:

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 ; 
    
    
     
    
    

Veya tablo başarıyla oluşturulduktan sonra aşağıdaki ifadeyi de kullanabilirsiniz:

mysql > ALTER TABLE t AUTO_INCREMENT = 100 ; 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

En gidin