我通过 PhpMyAdmin 从本地存储在我的 MySQL 数据库中的数据库中导出了几个条目,我只想替换在线托管的目标数据库中的那些条目。不幸的是,当我尝试这样做时,PHPMyAdmin 说这些帖子已经存在,因此他无法删除它们。
在其余帖子中手动搜索这些条目并一次删除它们将花费我很多时间,所以我想知道是否有任何解决方法可以在导入时覆盖这些条目。
提前致谢!
我通过 PhpMyAdmin 从本地存储在我的 MySQL 数据库中的数据库中导出了几个条目,我只想替换在线托管的目标数据库中的那些条目。不幸的是,当我尝试这样做时,PHPMyAdmin 说这些帖子已经存在,因此他无法删除它们。
在其余帖子中手动搜索这些条目并一次删除它们将花费我很多时间,所以我想知道是否有任何解决方法可以在导入时覆盖这些条目。
提前致谢!
一个很好的选择是在本地从 phpMyAdmin 初始导出时处理此问题。从 phpMyAdmin 导出时:
导入您的生产数据库。(始终事先备份您的生产数据库以防万一)
我知道这是一篇旧帖子,但它实际上帮助我找到了 phpMyAdmin 内置的解决方案。希望它可以帮助别人!
这是一种快速而肮脏的方法。其他人可能有更好的解决方案:
听起来您正在尝试运行 INSERT 查询,而 phpMyAdmin 告诉您它们已经存在。如果您使用 UPDATE 查询,则可以更新信息。
我会将那里的查询复制到文本编辑器中,最好是可以处理查找和替换的文本编辑器,例如 Notepad++ 或 Gedit,然后替换一些代码以将查询从 INSERT 更改为 UPDATE。
见: http ://dev.mysql.com/doc/refman/5.0/en/update.html
或者,您可以删除它们,然后运行您的 INSERT 查询。
您可能可以使用一些逻辑与查找和替换来进行删除查询,首先摆脱它们。
签出insert on duplicate。您可以将语法添加到本地存储的条目中,或者导入到临时数据库中,然后运行INSERT ... SELECT ... ON DUPLICATE KEY UPDATE
. 如果您可以发布架构,它将帮助我们更好地指导您。