-1

我有一个 mysql 损坏的数据库,我还有另一个很好的数据库,它包含所有表和列。我如何才能在损坏的数据库中导入仅缺少良好数据库中的信息?我的意思是不存储信息的表、列和值。

我导出了良好的数据库,当我尝试导入损坏的数据库时,我得到:#1060 - Duplicate column name 'id_advice'

所以,我需要的是跳过重复项目并继续只添加不存在的信息。

4

2 回答 2

1

您可以使用 Mysqldump。可以选择不使用数据。

mysqldump -uYourUserName -p=YourPassword databasename --no-data --routines > "dump.sql"

您可以导入表结构。如果不存在则使用创建或如果存在则删除,因此您可以根据需要进行定制。我建议下载 Mysql Workbench,使用该工具可以轻松完成。

关于 mysqldump 的信息 http://dev.mysql.com/doc/refman/5.6/en/mysqldump.html

于 2013-10-18T19:22:49.713 回答
-1

您可以在 SQL 语句中使用“IF EXIST”。

您可以使用 PHP 或其他编程语言获得每条记录/表格/所需内容。

然后,您构建一些这样的语句:

IF NOT EXISTS (SELECT what-you-want FROM BrokenTable WHERE some-test=some-value) INSERT INTO ClearTable(value, that, you, need, to, insert);

希望我对你有所帮助。

于 2013-10-18T19:29:15.650 回答