2012-12-19 79 views
0

我试图使用MySQL备份.SQL通过phpMy管理员在MAMP文件,但得到这个错误:#1062 - 重复条目“%-test-”关键“主要”

SQL query: 

-- 
-- Dumping data for table `db` 
-- 
INSERT INTO `db` ( `Host` , `Db` , `User` , `Select_priv` , `Insert_priv` ,  `Update_priv` , `Delete_priv` , `Create_priv` , `Drop_priv` , `Grant_priv` , `References_priv` , `Index_priv` , `Alter_priv` , `Create_tmp_table_priv` , `Lock_tables_priv` , `Create_view_priv` , `Show_view_priv` , `Create_routine_priv` , `Alter_routine_priv` , `Execute_priv` , `Event_priv` , `Trigger_priv`) 
VALUES 
    ( '%', 'test', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'Y', 'Y', 'Y', 'Y',   
     'Y', 'Y', 'Y', 'Y', 'N', 'N', 'Y', 'Y'), 
    ( '%', 'test\\_%', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'Y', 'Y', 'Y', 'Y',  'Y', 'Y', 'Y', 'Y', 'N', 'N', 'Y', 'Y'), 
    ( 'localhost', 'phpmyadmin', 'phpmyadmin', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N',  
     'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y' ); 

MySQL said: 

#1062 - Duplicate entry '%-test-' for key 'PRIMARY' 

而且它是说错误在这里:

'%', 'test', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'Y', 'Y', 'Y', 'Y',  'Y', 'Y', 'Y', 'Y', 'N', 'N', 'Y', 'Y' 

任何提示?任何方式,我可以通过MAMP忽略这个错误,因为我在这里发现:http://linuxadminzone.com/ignore-mysql-error-while-executing-bulk-statements/ ??

编辑:

这里是分贝输出(我认为):

CREATE TABLE IF NOT EXISTS `db` (
    `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Event_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    `Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
    PRIMARY KEY (`Host`,`Db`,`User`), 
    KEY `User` (`User`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Database privileges'; 
+0

表中已经有行吗?如果你对PK感到厌烦,我怀疑它确实...... –

+0

对不起迈克尔,我是一个完整的小白,你能解释一下吗? – NateHunt

+1

你能告诉我们表的定义吗?我怀疑你有'主机'作为PK,你试图增加两次。 – Stefan

回答

0

貌似你试图插入两行用空的用户''。插入一个空用户的第一行后,试图插入另一个将导致密钥违规。

+0

因此,我应该在第一个示例中的“VALUES”之后删除第一行? – NateHunt

+0

这可能有助于避免重复密钥问题。 – Ryan

相关问题