我有一张没有主键的表。我需要实现某种在线架构更改,我不想更改插入顺序。在MySQL文档中,我找到了this:
如果表没有PRIMARY KEY或合适的UNIQUE索引,InnoDB会在包含行ID值的合成列内部生成隐藏聚簇索引。行按InnoDB分配给此类表中的行的ID排序。行ID是一个6字节的字段,随着新行的插入而单调增加。因此,按行ID排序的行在物理上按插入顺序排列。
是否有可能从表格中获取此值似乎有助于解决我的问题?
答案 0 :(得分:2)
不,没有办法得到这个,因为也没有理由。在数据库中,只要您未在ORDER BY
(或SELECT
或UPDATE
)中指定DELETE
子句,就不会对行进行排序。您应不依赖“广告订单”。
只需添加一列作为主键......