在其他ID之间插入连续ID

时间:2016-12-22 21:05:39

标签: mysql sql

我有下表:

id  x  y  z  
1   z 
3       
6      x 
7      zy
....
10000   

我需要在已经没有删除内部数据的其他ID之间添加id。似乎无法找到任何解决方案,尝试各种各样的事情,但最终制作了空白行。 有点新的一起sql。

1 个答案:

答案 0 :(得分:0)

使用您在评论中提供的信息......

  

备份我需要导入到当前数据库,这是仅使用更新查询生成的,需要先创建行,以便我可以导入它们。

...而且你使用的是MySQL,我认为你的问题有一个简单的解决方案。

创建备份文件的副本(如果原始版本无法按预期工作),请在文本编辑器中将其打开,并将UPDATE <table_name>替换为INSERT INTO <table_name>(请输入实际名称)您的表而不是<table_name>)。

如果您要导入的某些行已存在于表中,则可以使用以下选项来解决冲突:

  1. 使用INSERT IGNORE INTO <table_name>作为替换字符串来忽略备份中的行(表中已存在的行保持不变);从技术上讲,IGNORE不会忽略您要插入的行;它试图插入它们并因为它们已经存在而失败,但将故障视为警告(它们通常是错误);
  2. 使用REPLACE INTO <table_name>作为替换字符串,用备份中的数据替换现有行;从技术上讲,REPLACE执行DELETE后跟INSERT;如果要插入的行不完整,则不是最佳解决方案。