我有一个包含3列的数据表:索引,标题,消息。例如:
1 'Title1' 'Hi!'
2 'Title2' 'Sup'
3 'Title3' 'Nothing'
如果我删除例如中间的索引号,则索引号将包含间隙。我如何更新它们来解决这个问题?这有什么mysql偏好吗? (我真的需要它们按顺序排列,没有间隙)
答案 0 :(得分:0)
您可以使用trigger自动执行此操作。
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