我有一个包含3列的数据表:索引、标题、消息。示例:
1 'Title1' 'Hi!'
2 'Title2' 'Sup'
3 'Title3' 'Nothing'
例如,如果我删除中间的一个,索引号将包含一个间隙。我如何更新它们以修复此问题?mysql对此有什么偏好吗?(我真的需要它们有序,没有间隙)
您可以使用触发器自动执行此操作。
CREATE TRIGGER update_indexes AFTER DELETE on your_table
FOR EACH ROW
BEGIN
UPDATE
your_table
SET
your_table.`index` = your_table.`index` - 1
WHERE your_table.`index` > old.`index`;
END