我是MySQL的新手,所以如果这个问题太“基本”,请原谅我。
我们将数据从另一个数据库导入MySQL。在其中两个表中,ID字段中存在较大间隙。例如,在一个表中,ID 1到5438具有较小的间隙,但接下来的几个ID是5823,6612,7880,8577,12541并且它继续像这样到54189.然后它跳转到441739936并且继续增加,具有大的间隙介于3872082950之间。我假设当我们开始向该表添加数据时,下一个ID将是3872082951(它设置为自动递增)。该表只有5234行。
我的问题是:
答案 0 :(得分:2)
允许在数据库中保留大的间隙没有任何问题或损失。对性能没有影响。自动递增ID必须是唯一的,但不需要它们是连续的。
答案 1 :(得分:0)
1)不,它不会
2)可能你不应该记住,id可以用来引用其他表中的数据行,所以如果你重新编号,你可以改变关系。
答案 2 :(得分:0)
如Bill所述,没有任何问题存在间隙,但要注意为字段设置正确的数据类型以应对值的大小(bigint等)。
您可以在此处阅读更多内容:http://dev.mysql.com/doc/refman/5.7/en/example-auto-increment.html并在此处找到数字数据类型:http://dev.mysql.com/doc/refman/5.7/en/numeric-types.html