Могу ли я иметь базу данных MySQL, автоматически назначающую значение столбцу после оператора вставки? - PullRequest
3 голосов
/ 07 июля 2011

При наличии сотрудника таблицы с идентификатором столбца (pk) и именем

ID|name
--+-----
1 |John
2 |James
3 |Tom

Могу ли я сделать

INSERT INTO employee (name) VALUES (Jack);

и каким-то образом автоматически присвоить базе данных следующий доступный идентификатор для базы данных?Может ли триггер сделать это?Если так, то как?

Ответы [ 3 ]

2 голосов
/ 07 июля 2011

Вы можете использовать функцию AUTO INCREMENT в My Sql.Когда вы создаете таблицу, вы можете сделать что-то вроде этого:

CREATE TABLE employee(
 id MEDIUMINT NOT NULL AUTO_INCREMENT,
 name CHAR(30) NOT NULL,
 PRIMARY KEY (id)
) ENGINE=MyISAM;

Или, может быть, использовать изменить таблицу Запрос, чтобы изменить столбец ID для автоматического увеличения значения

2 голосов
/ 07 июля 2011

Вы хотите автоинкрементный столбец.Вы можете обратиться к документации здесь: http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html

1 голос
/ 07 июля 2011

Создайте таблицу с идентификатором столбцом автоинкремента:

CREATE TABLE table_name
(
   id INTEGER AUTO_INCREMENT PRIMARY KEY,
   -- other columns to follow
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...