2015-04-04 99 views
0

目錄中已有產品。在/ home 1062Opencart - 添加產品會給出錯誤

`INSERT INTO oc_product SET model = 'xxxxx', sku = '', upc = '', ean = '', jan = '', isbn = '', mpn = '', location = '', quantity = '1', minimum = '1', subtract = '1', stock_status_id = '5', date_available = '2015-04-03', manufacturer_id = '0', shipping = '1', price = '0', points = '0', weight = '0', weight_class_id = '1', length = '0', width = '0', height = '0', length_class_id = '1', status = '1', tax_class_id = '0', sort_order = '1', date_added = NOW()` 

:當我嘗試添加另一個,它會返回該錯誤:(我認爲這是SQL) 注意:錯誤:重複的項目「2147483647」關鍵「PRIMARY」 錯誤無/xxxx/xxxx/system/database/mysql.php on line 50

任何想法? 我認爲2147483647是id可以使用的最大值,但是由於某種原因,這就是它試圖自動填充的原因?

+0

該語法聽起來像是插入和更新的合併。你能發佈你的代碼嗎?該整數是您可以擁有的最大整數(32位),實際上是該產品的ID? – chris85 2015-04-04 14:09:18

+0

@ chris85我不知道代碼在哪裏執行 - 它是opencart框架的一部分。但如果我用phpmyadmin查看SQL數據庫,那個ID確實已經存在。我不明白爲什麼它不以1,2,3開頭 - 或者也許PHP代碼試圖把一個負面的ID(出於任何奇怪的原因),哪些SQL假設最大可能? – 2015-04-04 14:29:12

+0

我猜'primary'是'auto_increment'列。在這種情況下,以下MySql文檔提供了幾種可能的解決方案。 http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html – jmarkmurphy 2015-04-04 14:41:12

回答

0

我找到了解決方案:AUTO_INCREMENT是mySQL用於在INSERT新行時自動填充表的值。所以,下一個ID將是AUTO_INCREMENT的值。 (其中,錯誤地設置爲2147483647)。

所以我去了phpMyAdmin並將auto_increment改回爲1,對於產品表,現在它的工作原理。

0

OR tbl中的其他錯誤Oc_card no行card_id上的Auto_increment。 在行上設置Auto_increment card_id 並修復它