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

त्रुटि कोड:1822 जब डेटा प्रकार मेल खाते हैं, समग्र कुंजी के साथ

समस्या इस तथ्य के कारण है कि विदेशी कुंजी, subj_code , एक बहु-स्तंभ . का हिस्सा है संदर्भित तालिका में प्राथमिक कुंजी (पीके) enrolment :

primary key (stud_id, subj_code, semester, year)

जहां यह कॉलम (subj_code ) सबसे बाईं ओर नहीं है

टेबल student यह समस्या नहीं है क्योंकि इसका विदेशी कुंजी कॉलम stud_id . है संदर्भित तालिका में PK का सबसे बायां स्तंभ है।

इसे हल करने के लिए आप संदर्भित कॉलम के लिए एक नई अनुक्रमणिका बना सकते हैं:

ALTER TABLE enrolment ADD INDEX subj_code_idx (subj_code);

नोट: आपको संदर्भित तालिका के लिए भी ऐसा ही करना होगा grade अन्य विदेशी कुंजी में।

यहां डेमो करें



  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 innodb को कैसे हल करें TRUNCATE TABLE पर टेबल मेटाडेटा लॉक की प्रतीक्षा कर रहा है?

  2. एपोस्ट्रोफ (एकल उद्धरण) युक्त डेटा सम्मिलित करते समय MySQL त्रुटि?

  3. Django, अपग्रेड के बाद:MySQL सर्वर चला गया है

  4. पीएचपी:mysql वी mysqli वी pdo

  5. क्या जांचें कि क्या MySQL मेमोरी यूटिलाइजेशन हाई है