добавление следующего порядкового номера для первичного ключа в запрос на добавление

Мне нужно создать запрос на добавление, который добавляет много записей в таблицу. эта таблица имеет первичный ключ, то есть порядковый номер. Как сделать запрос на добавление, добавить записи в таблицу и автоматически назначить следующий порядковый номер для первичного ключа? Мне нужно будет выполнять этот запрос на многопользовательском сервере MYSQL в течение дня, спасибо!


person Nathaniel_613    schedule 19.12.2011    source источник
comment
Добавить в базу? Добавить из базы данных? Где появляется MySQL?   -  person Fionnuala    schedule 19.12.2011
comment
Привет Рему! Мне нужно добавить в таблицу базы данных MYSQL.   -  person Nathaniel_613    schedule 19.12.2011
comment
Надлежащая маркировка может привести к более быстрым и качественным ответам.   -  person Fionnuala    schedule 19.12.2011
comment
Почему это помечено как ms-access? Что-то не упомянуто в вопросе?   -  person ruakh    schedule 19.12.2011
comment
Вы ищете это? stackoverflow.com/questions/3215698/mysql-manual-increment-ids Проверьте ответы!   -  person Gonza    schedule 19.12.2011
comment
Как только вам требуется такая функция, как знание следующего auto_increment — вы делаете что-то очень и очень неправильно.   -  person N.B.    schedule 19.12.2011


Ответы (1)


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

пример: если у вас есть эти данные в таблице names

id    name
1     Ken
2     Jon
3     Steve

И вы запускаете этот запрос

INSERT INTO names (name) VALUES ('Peter')

Ваша таблица должна автоматически присвоить id #4 Питеру

Если последовательный ПК поддерживается вручную, я бы посоветовал вам изменить это поле, чтобы оно было настоящим полем с автоматическим приращением, если это вообще возможно, или создать новое поле с автоматическим приращением и удалить старое. Просто убедитесь, что вы обновили любые другие связанные таблицы, прежде чем удалить поле.

person CheeseConQueso    schedule 19.12.2011
comment
мое поле первичного ключа имеет буквенно-цифровую структуру. Он имеет двухбуквенный префикс, за которым следует дефис и порядковый номер. Я использую MS Access для запуска запроса на добавление к моей связанной базе данных mysql, пожалуйста, сообщите. - person Nathaniel_613; 19.12.2011
comment
Как определить двухбуквенный префикс? Всегда ли это одно и то же? - person Olivier Jacot-Descombes; 21.12.2011