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

विदेशी कुंजी कैसे जोड़ें (MySQL)

आप शून्य से अधिक पंक्तियों वाली तालिका में एक नॉट न्यूल कॉलम नहीं जोड़ सकते हैं, जब कॉलम उन मानों तक सीमित है जो मूल तालिका में मेल खाते हैं, और फिर भी केवल NULL मान हैं क्योंकि यह एक नया, अप्रचलित कॉलम है जिसमें कोई डिफ़ॉल्ट नहीं है ।

वर्कअराउंड इसे चरणों में करना है:कॉलम जोड़ें, लेकिन इसे NULL घोषित न करें, और अभी तक विदेशी कुंजी घोषित न करें।

ALTER TABLE boys
 ADD COLUMN toy_id INT;

फिर इसे वैध डेटा से भरें जो आपके खिलौनों की तालिका में कुछ मूल्यों से मेल खाता हो।

UPDATE boys SET toy_id = ...;

फिर कॉलम को नॉट न्यूल में बदलें, और बाधा उत्पन्न करें:

ALTER TABLE boys MODIFY COLUMN toy_id INT NOT NULL,
 ADD CONSTRAINT toys_toy_id_fk
 FOREIGN KEY(toy_id)
 REFERENCES toys(toy_id);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. (My)SQL तीन तालिकाओं के साथ पूर्ण रूप से जुड़ता है

  2. Nodejs MySQL कनेक्शन क्वेरी फ़ंक्शन कॉल के लिए वापसी मान

  3. क्या कुल MySQL फ़ंक्शन हमेशा एक पंक्ति लौटाते हैं?

  4. इकाई फ्रेमवर्क कोड पहले अधिकतम लम्बाई और निश्चित लम्बाई (चार बनाम वर्चर)

  5. mysql में पिछले मानों को हटाए बिना अद्यतन पंक्ति