Как MySQL создает последовательности? Оператор последовательности автоинкремента создания базы данных MySQL

MySQLКак создать последовательность?База данных MySQLСоздайте оператор автоинкрементной последовательности

Использование последовательности MySQL

Последовательность MySQL представляет собой набор целых чисел: 1, 2, 3, ..., поскольку таблица данных может иметь только один первичный ключ автоинкремента поля, если вы хотите добиться автоматического увеличения других полей, вы можете использовать последовательность MySQL для достигать.

В этой главе мы опишем, как использовать последовательности MySQL.


Используйте AUTO_INCREMENT

Самый простой способ использовать последовательности в MySQL — использовать MySQL AUTO_INCREMENT для определения столбцов.

Пример

Таблица данных Insect создается в следующем примере, где не указано значение для автоматического роста.

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

В клиенте MySQL вы можете использовать функцию LAST_INSERT_ID() в SQL, чтобы получить значение последнего автоматически увеличивающегося столбца, вставленного в таблицу.

Соответствующие функции также предусмотрены в сценарии PHP или PERL для получения значения последнего столбца автоинкремента, вставленного в таблицу.

экземпляр PERL

Используйте свойство mysql_insertid, чтобы получить значение AUTO_INCREMENT.Примеры следующие:

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

PHP-пример

PHP получает значение столбца AUTO_INCREMENT в выполненном операторе SQL вставки через функцию mysql_insert_id().

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

последовательность сброса

Если вы удаляете несколько записей в таблице данных и хотите переупорядочить столбец AUTO_INCREMENT оставшихся данных, вы можете сделать это, удалив столбец с автоинкрементом, а затем добавив его снова.Однако эта операция должна быть очень осторожной, если она есть.В то же время удаления добавляются новые записи, и может быть путаница данных.Операции следующие:

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

Установите начальное значение последовательности

В общем случае начальное значение последовательности равно 1, но если вам нужно указать начальное значение 100, то мы можем сделать это с помощью следующего оператора:

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 ; 
    
    
     
    
    

Или вы также можете использовать следующий оператор после успешного создания таблицы:

mysql > ALTER TABLE t AUTO_INCREMENT = 100 ; 

Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ ) поделился «Как MySQL создает последовательность? База данных MySQL для создания оператора самоувеличивающейся последовательности», чтобы помочь вам.

Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-498.html

Добро пожаловать на Telegram-канал блога Chen Weiliang, чтобы быть в курсе последних обновлений!

🔔 Будьте первым, кто получит ценное «Руководство по использованию инструмента искусственного интеллекта для контент-маркетинга ChatGPT» в верхнем каталоге канала! 🌟
📚 Это руководство содержит огромную ценность. 🌟Это редкая возможность, не упустите ее! ⏰⌛💨
Делитесь и ставьте лайк, если хотите!
Ваш обмен и лайки - наша постоянная мотивация!

 

发表 评论

Ваш электронный адрес не будет опубликован. 必填 项 已 用 * 标注

滚动 到 顶部