मैं MySQL में प्राथमिक कुंजी कॉलम का नाम कैसे बदलूं?मैं MySQL में प्राथमिक कुंजी कॉलम का नाम कैसे बदलूं?
उत्तर
यह किसी भी अन्य स्तंभ में फेरबदल से अलग नहीं है -
ALTER TABLE `pkey` CHANGE `keyfield` `keyfield2` INT(11) NOT NULL AUTO_INCREMENT
इस तालिका pkey
में स्तंभ keyfield
keyfield2
के नाम से जाना बदलता है - आप बाद में परिभाषा आपूर्ति करने के लिए, हमेशा की तरह है।
यदि आप इनो डीबी के साथ काम कर रहे हैं तो मुझे लगता है कि आप प्राथमिक कुंजी का नाम नहीं बदल सकते हैं, कम से कम आप विदेशी कुंजी द्वारा संदर्भित नहीं कर सकते हैं। आपको डेटाबेस को डंप करने, कॉलम का नाम बदलने और डंप फ़ाइल में कुंजियों को संदर्भित करने की आवश्यकता है, फिर डेटाबेस को फिर से लोड करें।
शायद आपके पास एक विदेशी कुंजी बाधा है। आप उन्हें SET foreign_key_constraints=0
द्वारा अक्षम कर सकते हैं लेकिन आपको डेटाबेस को बाद में अपडेट करना याद रखना होगा।
मैं यह मान कैसे बदलूं? मैं मूल्य 1 के बाद बदलता हूँ? –
@ राफेलगोम्स फ्रांसिस्को आपका क्या मतलब है? – Alex
संभवतः एक खराब अभ्यास काम करता है। लेकिन आप अपने पूरे डीबी को एक एसक्यूएल टेक्स्ट फ़ाइल में निर्यात कर सकते हैं। उस पीके को ढूंढें और बदलें जिसे आप पुनर्नामित करना चाहते हैं, और फिर एसक्यूएल पर डेटाबेस को पुनर्स्थापित करें।
परिवर्तन कथन के प्राथमिक कुंजी भाग को छोड़ दें। प्राथमिक कुंजी स्वचालित रूप से अपडेट हो जाएगी।
यह उत्तर तब होता है जब आपको अप्रत्याशित त्रुटियां मिल रही हैं। महान! –
दूसरों टेबल अपनी मेज पर विदेशी कुंजी है, तो आप सीधे तालिका में परिवर्तन का उपयोग कर स्तंभ का नाम नहीं बदल सकते हैं, यह निम्न त्रुटि फेंकता होगा: [HY000] [1025] yyy को xxx का नाम बदलने पर त्रुटि (errno: 150) आपको: प्राथमिक कुंजी आप
- ड्रॉप विदेशी कुंजी प्राथमिक कुंजी
- दूसरों तालिकाओं के लिए विदेशी स्तंभ जोड़ने के नाम बदलने
इंटेलिज में एक टेबल का नाम बदलने पर, यह आपको कोड छोड़ देता है और विदेशी कुंजी जोड़ता है।
- 1. MySQL मल्टीकॉलम प्राथमिक कुंजी
- 2. मल्टी-कॉलम प्राथमिक कुंजी
- 3. grails में प्राथमिक कुंजी कॉलम कैसे बदलें?
- 4. mysql कई प्राथमिक कुंजी
- 5. मैं एक MySQL स्कीमा का नाम कैसे बदलूं?
- 6. एक समग्र प्राथमिक कुंजी
- 7. मैं टी-एसक्यूएल में SQL सर्वर कॉलम नाम कैसे बदलूं?
- 8. ओरेकल में प्राथमिक कुंजी कॉलम कैसे प्राप्त करें?
- 9. MySQL - ऑटो इन्टरमेंट प्राथमिक कुंजी
- 10. ईएफ कोड में प्राथमिक कुंजी का नाम कैसे बदलें?
- 11. mysql, कॉलम को प्राथमिक कुंजी और ऑटो incremement
- 12. बड़ी तालिकाओं के लिए MySQL प्राथमिक कुंजी कॉलम प्रकार
- 13. MySQL प्राथमिक/विदेशी कुंजी आकार?
- 14. MySQL लोड डेटा INFILE - कोई प्राथमिक कुंजी
- 15. मैं आर ऑब्जेक्ट का नाम कैसे बदलूं?
- 16. मैं हेरोोकू में कॉलम प्रकार कैसे बदलूं?
- 17. मैं .git निर्देशिका का नाम कैसे बदलूं?
- 18. मैं एक mysql तालिका कॉलम डिफ़ॉल्ट कैसे बदलूं?
- 19. mysql में प्राथमिक कुंजी रीसेट करें?
- 20. PostgreSQL समग्र प्राथमिक कुंजी
- 21. प्राथमिक कुंजी
- 22. मौजूदा समग्र प्राथमिक कुंजी
- 23. प्राथमिक कुंजी
- 24. मैं नाम कैसे बदलूं मेरी कमी
- 25. MySQL प्राथमिक कुंजी बदल देते हैं विदेशी कुंजी contraints मौजूद
- 26. एसक्यूएल: प्राथमिक कुंजी कॉलम। कृत्रिम "आईडी" कॉलम बनाम "प्राकृतिक" कॉलम
- 27. मैं ईएसएस में आर सत्र का नाम कैसे बदलूं?
- 28. मैं डिफ़ॉल्ट पोस्टग्रेस सुपरसियर का नाम "रूट" में कैसे बदलूं?
- 29. मैं Emacs में एक खुली फ़ाइल का नाम कैसे बदलूं?
- 30. एकाधिक कॉलम पर स्क्लाइट प्राथमिक कुंजी
यह समाधान त्रुटि 150 का कारण बन जाएगा। –
यह तब काम करता है जब कोई विदेशी कुंजी नहीं होती है। एक और जवाब पूरे डेटाबेस को डंपिंग/बहाल करने का सुझाव देता है जो काम करेगा लेकिन मेरे लिए काम की जाने वाली विदेशी कुंजी/इंडेक्स को छोड़कर/पुनर्निर्माण कर रहा है। – penfold
@Pavel Rodionov से सहमत है, यह निम्न त्रुटि को फेंकता है: [HY000] [1025] xxx से yyy का नाम बदलने में त्रुटि (errno: 150) –