Как установить поле AUTO_INCREMENT с, чтобы начать со значения 6000 в MySQL? - PullRequest
11 голосов
/ 27 августа 2010

Как установить автоинкремент поля без ключа автоинкремента в mysql или как установить автоинкремент поля со значением запуска 6000 в mysql?

Ответы [ 3 ]

13 голосов
/ 27 августа 2010

... как установить автоинкремент поля с начальным значением 6000 в mysql?

Если ваша таблица уже существует:

ALTER TABLE your_table AUTO_INCREMENT = 6000;

Если вы создаете свою таблицу с нуля:

CREATE TABLE your_table () AUTO_INCREMENT = 6000;

Источник и дальнейшее чтение:


Контрольный пример:

CREATE TABLE users (
   user_id  int NOT NULL, 
   name     varchar(50),
   PRIMARY KEY (user_id)
);

INSERT INTO users VALUES (1, 'Bob');
INSERT INTO users VALUES (2, 'Joe');
INSERT INTO users VALUES (3, 'Paul');

ALTER TABLE users MODIFY user_id int NOT NULL AUTO_INCREMENT;
ALTER TABLE users AUTO_INCREMENT = 6000;

INSERT INTO users (name) VALUES ('Keith');
INSERT INTO users (name) VALUES ('Steve');
INSERT INTO users (name) VALUES ('Jack');

SELECT * FROM users;
+---------+-------+
| user_id | name  |
+---------+-------+
|       1 | Bob   |
|       2 | Joe   |
|       3 | Paul  |
|    6000 | Keith |
|    6001 | Steve |
|    6002 | Jack  |
+---------+-------+
6 rows in set (0.01 sec)
2 голосов
/ 27 августа 2010
ALTER TABLE tbl_name AUTO_INCREMENT = 6000

но учтите, что в этой таблице не должно быть PK-лагера 6000!

0 голосов
/ 26 июня 2019

mysql покажет вам правильный синтаксис для этого и многое другое, если вы выполните следующее для таблицы, которая содержит PK с автоматическим приращением и некоторые данные уже:

SHOW CREATE TABLE your_tablename;
...