Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

$wpdb->insert कुंजी '1' के लिए डुप्लिकेट प्रविष्टि '0-0' उत्पन्न करता है

यह क्यों काम नहीं करता है:$wpdb->insert . का तीसरा पैरामीटर सेट न करें स्ट्रिंग खाली करने के लिए। यह हर क्षेत्र को तदनुसार प्रारूपित करता है..

अब यह जो करता है वह इसके बराबर है:

$wpdb->insert($table, array(
            'object_id' => sprintf('', $num_object_id), 
            'term_taxonomy_id' => sprintf('', $num_taxo_id),
            'term_order' => sprintf('', 0)
));

यदि आप वास्तव में तीसरा पैरामीटर सेट करना चाहते हैं तो आपको यह करना चाहिए:

$wpdb->insert($table, array(
            'object_id' => $num_object_id, 
            'term_taxonomy_id' => $num_taxo_id,
            'term_order' => 0
), array('%d', '%d', '%d'));

त्रुटि के लिए:wp_term_relationships तालिका में एक अद्वितीय प्राथमिक कुंजी है (object_id, term_taxonomy_id)। इसका मतलब है कि उस तालिका में आपके पास दो पंक्तियाँ नहीं हो सकती हैं जिनमें समान object_id और term_taxonomy_id दोनों हों।

हालांकि ऐसा इसलिए हुआ है क्योंकि खाली स्ट्रिंग में डालने का तीसरा पैरामीटर सेट करके, आप बार-बार ऑब्जेक्ट_आईडी =0 और टर्म_टैक्सोनॉमी_आईडी =0 के साथ पंक्तियों को सम्मिलित करने का प्रयास कर रहे हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL/PHP एक ही पंक्ति को दो बार सम्मिलित करना

  2. MySQL Arrays:क्या यह किया जा सकता है?

  3. मैं फ़ाइल सिस्टम के बजाय PHP सत्र डेटा को डेटाबेस में कैसे सहेजूँ?

  4. नोड.जेएस में MySQL रिटर्न वैल्यू को प्रोसेस करने के वादे का उपयोग करें

  5. किसी वेब ऐप में JDBC के माध्यम से डेटाबेस से कनेक्ट करते समय Class.forName की आवश्यकता कब होती है?