如果我在其中导出了一个带有数据库的 .sql 文件,那么我是否只能将该数据库的“部分”而不是整个数据库导入MySql?
当我在测试数据库上尝试时出现了问题。
我导出了testdatabase。
然后清空数据库中的一些表。
然后我计划从.sql文件导入,希望清空的表格会被填充的地方重新填充。
但是我收到了一个错误:
#1007 Can't create database 'database_name' - database exists
它是否存在,但是是否可以仅从.sql备份中导入已存在的表的值?
或者我必须删除整个数据库然后导入数据库吗?
仅供参考我目前正在使用PhpMyAdmin。
答案 0 :(得分:1)
编辑文件并删除你不感兴趣恢复的部分Camran很简单。
或者 - 将整个文件导入单独的数据库(更改数据库名称@文件顶部),然后使用INSERT语句将数据从此新数据库中的表复制到另一个数据库。
答案 1 :(得分:0)
我通过编写脚本将每个表转储到每个单独的文件中并将所有CREATE TABLE
语句转储到自己的文件中来解决了这个问题。多年来它已经有点漫长而且花哨,所以我不能在这里发布它。
另一种方法是告诉MySQL忽略错误。使用CLI,您可以提供-f
开关,但我不熟悉PhpMyAdmin以了解如何执行此操作。