आपकी तालिका में पहले से ही एक प्राथमिक कुंजी है। आप सिर्फ प्राथमिक कुंजी नहीं जोड़ सकते, अन्यथा त्रुटि का कारण होगा। चूँकि sql table के लिए एक प्राथमिक कुंजी है।
सबसे पहले, आपको अपनी पुरानी प्राथमिक कुंजी छोड़नी होगी।
माई एसक्यूएल:
ALTER TABLE Persion
DROP PRIMARY KEY;
SQL सर्वर / Oracle / MS एक्सेस:
ALTER TABLE Persion
DROP CONSTRAINT 'constraint name';
आपको अपनी तालिका में बाधा नाम ढूंढना होगा। यदि आपने तालिका बनाते समय बाधा नाम दिया था, तो आप आसानी से बाधा नाम (उदा: PK_Persion) का उपयोग कर सकते हैं।
दूसरा, प्राथमिक कुंजी जोड़ें।
MySQL / SQL सर्वर / Oracle / MS एक्सेस:
ALTER TABLE Persion ADD PRIMARY KEY (PersionId,Pname,PMID);
या नीचे बेहतर है
ALTER TABLE Persion ADD CONSTRAINT PK_Persion PRIMARY KEY (PersionId,Pname,PMID);
यह डेवलपर द्वारा बाधा नाम सेट कर सकता है। यह टेबल को बनाए रखने के लिए अधिक आसानी से है।
जब मैंने सभी उत्तरों को देखा तो मैं थोड़ा भ्रमित हो गया। इसलिए मैं हर विवरण को खोजने के लिए कुछ दस्तावेज़ों पर शोध करता हूं। आशा है कि यह उत्तर अन्य SQL शुरुआत में मदद कर सकता है।
संदर्भ: https://www.w3schools.com/sql/sql_primarykey.asp
personId
अपनी तालिका में डुप्लिकेट रखने की अनुमति है । बदले में इसका मतलब है कि यदि आप इस मेज पर एक लेन-देन (कई) प्रकार की तालिका से जुड़ते हैं तो आपको डुप्लिकेट रिकॉर्ड मिलेंगे, जिससे लेनदेन रिकॉर्ड की 'डबल काउंटिंग' हो जाएगी।