У меня есть база данных, tvguide, и это значения:
id bigint 255 UNSIGNED AUTO_INCREMENT
programme varchar 255
default value (which is from another table
with list of programs, the only linked field that
is shared with other table):<b><a href="gossipgirl.php">Gossip Girl</a></b>
channel varchar 255
airdate DATETIME - actual airtime
displayair DATETIME (rounded-up datetime, e.g. programme that airs 1.59pm
would be shown as 2.00pm, or 6.08pm as 6.10pm)
expiration DATETIME - when program finishes
episode VARCHAR 255 NULL - has null option if episode unknown
series VARCHAR 255
epno VARCHAR 255 - episode number
setreminder VARCHAR255 (shows "set reminder", sends email to user, but that
another thing to work on).
Я хочу вставить триггер в мою базу данных, чтобы, если запись удалена, автоинкремент ID автоматически устанавливает себя автоматически?
Любые идеи о том, как это сделать? Я сделал это вручную до сих пор, но я смотрю, как я могу делать с phpMyadmin, когда я удаляю запись.
BTW Я сделал копию таблицы для целей резервного копирования.
Спасибо
Я согласен с комментарием whitstone86, что вы можете просто "позволить ему расти".
Сказав это, чтобы изменить AUTO_INCREMENT
в любое время, вы можете просто запустить ALTER TABLE
.
Некоторые псевдокоды...
SELECT MAX(id)+1 AS max_id_plus_one FROM my_table;
ALTER TABLE my_table AUTO_INCREMENT = $max_id_plus_one;
Для производства условия гонки могут быть проблемой. Тем не менее, если это вы просто используете в phpmyadmin, этого должно быть достаточно.
Это довольно опасная идея.
Пусть он растет, он не имеет места: 250000000011 используйте то же место, что и 250000000012 в своем таблицу, тем более, что это bigint (8 байтов).
В противном случае