MySQL Workbench
 sql >> डेटाबेस >  >> Database Tools >> MySQL Workbench

Errno 121, लिखने या अपडेट करने पर डुप्लीकेट कुंजी?

ऐसा इसलिए संभव है क्योंकि आपने कॉलम के समान पहचानकर्ता के साथ कम से कम एक बाधा का नाम दिया है:

/* You already have a column named `restaurant` in this table, 
   but are naming the FK CONSTRAINT `restaurant` also... */
CONSTRAINT `restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

बाधा के लिए एक अलग पहचानकर्ता का उपयोग करना चाहिए जैसे fk_restaurant जैसे :

CONSTRAINT `fk_restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

और वही बात food में तालिका:

  /* Name it fk_food */
  CONSTRAINT `fk_food`
    FOREIGN KEY (`food` )
    REFERENCES `mydb`.`food` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  /* Name it fk_restaurant */
  CONSTRAINT `fk_restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

वे केवल तीन ही हैं जो मुझे दिखाई दे रहे हैं, लेकिन कुछ और भी हो सकते हैं जिन्हें मैंने याद किया।



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. एक्लिप्स केपलर आरसीपी मुख्य टूलबार क्रियाएं

  2. त्रुटि 1215 MYSQL विदेशी कुंजी बाधा नहीं जोड़ सकता,

  3. गाजर 2 वर्कबेंच के माध्यम से 15980 दस्तावेज़ों को क्लस्टर करने का प्रयास करते समय जावा ढेर आकार त्रुटि मिली

  4. दो कंप्यूटरों के बीच चल रहे कनेक्शन और उदाहरण

  5. MySQL दोहराने योग्य-पढ़ें कार्यक्षेत्र लेनदेन स्तर सेट नहीं है