Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में मौजूदा टेबल पर कंपोजिट PRIMARY KEY कैसे सेट करें

मौजूदा टेबल पर ALTER TABLE ... ADD PRIMARY KEY का उपयोग करके एकाधिक कॉलम पर कंपोजिट (संयुक्त) PRIMARY KEY सेट की जा सकती है।

उदाहरण

Room_allotment टेबल बनाकर id और Name पर कंपोजिट PK जोड़ना:

mysql> CREATE TABLE Room_allotment(Id INT, Name VARCHAR(20), RoomNo INT);
Query OK, 0 rows affected (0.20 sec)

mysql> DESCRIBE Room_allotment;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| Id     | int(11)     | YES  |     | NULL    |       |
| Name   | varchar(20) | YES  |     | NULL    |       |
| RoomNo | int(11)     | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+

कंपोजिट PRIMARY KEY जोड़ें

mysql> ALTER TABLE Room_allotment ADD PRIMARY KEY(Id, Name);
Query OK, 0 rows affected (0.29 sec)

mysql> DESCRIBE Room_allotment;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| Id     | int(11)     | NO   | PRI | 0       |       |
| Name   | varchar(20) | NO   | PRI |         |       |
| RoomNo | int(11)     | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+

परिवर्तनों का सारांश

कॉलमपहलेबाद में
IdNull=YES, Key=खालीNull=NO, Key=PRI
NameNull=YES, Key=खालीNull=NO, Key=PRI
RoomNoNull=YES, Key=खालीNull=YES, Key=खाली

पूर्व शर्तें

  • Id, Name का संयोजन अद्वितीय होना चाहिए (कोई डुप्लिकेट पंक्ति नहीं)
  • <ली>दोनों कॉलम में NULL मान नहीं होने चाहिए
  • टेबल में पहले से PRIMARY KEY नहीं होनी चाहिए

कंपोजिट PK का व्यवहार

  • (Id, Name) जोड़ी अद्वितीय पहचानकर्ता बन जाती है
  • <ली>व्यक्तिगत कॉलम में डुप्लिकेट हो सकते हैं, लेकिन जोड़ी नहीं
  • इस टेबल को रेफरेंस करने वाली FK में भी दो कॉलम होंगे

हटाना

ALTER TABLE Room_allotment DROP PRIMARY KEY;
  1. - MySQL टेबल से प्राइमरी की हटाना - DROP PRIMARY KEY

    MySQL में किसी टेबल से प्राइमरी की को हटाने के लिए ALTER TABLE ... DROP PRIMARY KEY स्टेटमेंट का उपयोग किया जाता है। यह ऑपरेशन टेबल संरचना को संशोधित करता है लेकिन डेटा को प्रभावित नहीं करता। सिंटैक्स ALTER TABLE your_table_name DROP PRIMARY KEY; व्यावहारिक उदाहरण 1. प्राइमरी की के साथ टेबल बनाएं

  1. - MySQL में एकाधिक कॉलम वाली टेबल में शर्तें कैसे बनाएं?

    MySQL में IF() फ़ंक्शन का उपयोग करके एकाधिक कॉलम पर शर्तीय तर्क लागू करना MySQL में IF() फ़ंक्शन का उपयोग करके क्वेरी स्तर पर शर्तीय तर्क लागू कर सकते हैं। यह तीन तर्क लेता है: शर्त, सत्य मान, असत्य मान। वाक्यविन्यास IF(condition, true_value, false_value) उदाहरण के साथ पूर्ण कार्यान्वयन टेबल बनान

  1. - MySQL में प्राइमरी की को कई टेबल में फॉरेन की के रूप में कैसे रेफ़र करें?

    ALTER TABLE ... ADD CONSTRAINT alter table yourSecondTableName add constraint `yourConstraintName` foreign key(`yourSecondTableNamePrimaryKey`) references yourFirstTableName(yourFirstTablePrimaryKeyColumnName); उदाहरण alter table demo66 add constraint `id_fk` foreign key(`user_id`) references