2015-07-13 85 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 
    
  • 相關問題