0

我正在尝试将数据导入具有如下字段的表中:

result_id

此字段设置为AUTO_INCREMENT,PRIMARYUNIQUE

我正在导入的数据在result_id字段中的信息与表中的当前数据相同(在某些地方)。SQL 不会让我导入,因为有重复项(这很公平)。

有没有办法让 SQL 附加我正在导入的数据而不使用重复数据result_id,基本上是继续 SQL 字段中的数字。我问的原因是我正在导入大约 25,000 条记录,我不想手动删除或更改result_id正在导入的数据中的信息。

谢谢,

H。

4

1 回答 1

4

您如何将数据导入 MySQL?

如果您使用 SQL 查询/脚本,那么应该有类似INSERT INTO.... 在一些文本编辑器中打开文件并全部替换INSERTINSERT IGNORE. 这将忽略插入具有重复主键的行。或者,如果您想用与导入脚本中相同的主键替换旧数据,则只需使用REPLACE查询代替INSERT查询。

希望能帮助到你...

[编辑]

由于您有主键,因此自动递增。在要导入数据的表中,添加一个虚拟列“dummy”并允许它为 NULL。现在,在您的导入脚本中将有类似 INSERT INTO () values () 的语句。现在在列名列表中将“result_id”替换为“dummy”并执行脚本。执行脚本后,只需从表中删除“虚拟”列。虽然它有点脏和耗时,但会做你的工作。

于 2012-11-07T10:24:21.750 回答