2015-07-13 89 views
0

我不太熟练使用phpmyadmin,所以请温和。#1062 - 重复键'81057''PRIMARY'

我已经转移过去的WordPress的网站,但他们有小型数据库。香港专业教育学院搬到现在新客户的网站我的主机,它是与此错误运行:

INSERT INTO `wp_options` VALUES (81057, 
'_wc_session_6f1ee0a5a9d89e47f7941c9e3b3e1fed', 
'a:20:{s:4:"cart";s:309:"a:1:{s:32:"7b1ce3d73b70f1a7246e7b76a35fb552";a:9:{s:10:"product_id";i:2103;s:12:"variation_id";s:0:"";s:9:"variation";s:0:"";s:8:"quantity";i:1;s:10:"line_total";d:23;s:8:"line_tax";i:0;s:13:"line_subtotal";d:23;s:17:"line_subtotal_tax";i:0;s:13:"line_tax_data";a:2:{s:5:"total";a:0:{}s:8:"subtotal";a:0:{}}}}";s:15:"applied_coupons";s:6:"a:0:{}";s:23:"coupon_discount_amounts";s:6:"a:0:{}";s:19:"cart_contents_total";d:23;s:20:"cart_contents_weight";i:0;s:19:"cart_contents_count";i:1;s:17:"cart_contents_tax";i:0;s:5:"total";i:0;s:8:"subtotal";d:23;s:15:"subtotal_ex_tax";d:23;s:9:"tax_total";i:0;s:5:"taxes";s:6:"a:0:{}";s:14:"shipping_taxes";s:6:"a:0:{}";s:13:"discount_cart";i:0;s:14:"discount_total";i:0;s:14:"shipping_total";i:0;s:18:"shipping_tax_total";i:0;s:9:"fee_total";i:0;s:4:"fees";s:6:"a:0:{}";s:10:"wc_notices";N;}', 
no') ;` 

#1062 - Duplicate entry '81057' for key 'PRIMARY' 

我真的没有一个线索,这意味着什么,以及如何去改变它。我知道有一个重复的条目,它与主键 - 它是在option_id上设置的。

我不明白为什么它不只是将条目添加到数据库中并自动增加它们 - 它设置的是什么?另外我该如何解决问题并添加数据库?

请帮忙!

+1

它不会使用自动增量的关键,因为你明确告诉它在你的INSERT语句使用密钥值'81057' –

+0

它明确指出,要插入一个ID记录'81057',它已经存在了。由于你的'id'列是主键,所以它拒绝了第二个(重复)条目。 –

+0

错误信息很明显* Duplicate * * 81057 * ...做一个表,索引和PRIMARY KEYS的含义的研究 – donald123

回答

0

AUTO_INCREMENT默认值值。如果您为该字段指定一个值,则将使用该值。

您可以省略insert语句中的值或使用NULL来代替。

0

它看起来像源数据库中的表有一些不一致,因为您只是试图将所有记录复制到您的新数据库。 检查源表中是否有多个记录与option_id相同,并且是否有一些尝试解决它们,然后再次尝试导入。

据我所知你正在尝试做整个数据库的手动传输,在这种情况下AUTO_INCREMENT只是不会工作,因为你会打破你的模型实体之间的关系。

0

我看到它的方式有两种选择。

  1. 忽略主键值并允许mysql创建一个新行并自动增加它。当然这需要你指定列。

    INSERT INTO `wp_options`(column2, column3, etc) 
    VALUES('_wc_session_6f1ee0a5a9d89e47f7941c9e3b3e1fed', ...); 
    

Notice that I left out the primary key

  • 如果数据需要被添加到该特定的行中,执行一个UPDATE代替。

    UPDATE wp_options SET column2='_wc_session_6f1ee0a5a9d89e47f7941c9e3b3e1fed', 
    column3='something else', ... 
    WHERE column1=81057 
    
  • 相关问题