Я нашел функцию mysql_insert_id для получения последнего автоматически сгенерированного идентификатора.
Должен ли я использовать mysql_insert_id +1 для добавления нового идентификатора или есть вызов для добавления нового уникального идентификатора?
Использование NULL для id:
INSERT INTO `database`.`table` (`id`, `user`, `result`) VALUES (NULL, 'Alice', 'green')");
ИЛИ не указывая id вообще:
INSERT INTO `database`.`table` (`user`, `result`) VALUES ('Alice', 'green')");
В любом случае, все работает отлично, больше предпочтений, но лично я выбрал второй, поскольку он меньше печатает.
Если для вашего поля id установлено значение auto increment, вам не нужно добавлять идентификатор вообще. Он будет увеличиваться и добавляться автоматически.
AUTO_INCREMENT в MySQL делает именно то, на что это похоже. Когда вы вставляете новую запись, она автоматически генерирует новый идентификатор для вас. Вам не нужен отдельный звонок.
Вставьте новую запись и установите столбец автоматического увеличения в NULL или просто опустите его полностью (что неявно устанавливает его в NULL – он имеет тот же результат). Столбец будет установлен на следующее значение автоинкремента вместо NULL.