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

एसक्यूएल में टेबल में कॉलम कैसे जोड़ें?

एसक्यूएल में टेबल में कॉलम कैसे जोड़ें

परिचय

  • पहले से बनाई गई तालिका में एक कॉलम जोड़ने के लिए, किसी को जोड़ें खंड के साथ ALTER कमांड का उपयोग करने की आवश्यकता है।
  • यदि क्वेरी में यह निर्दिष्ट नहीं है कि नया कॉलम कहाँ जोड़ा जाना है, तो डिफ़ॉल्ट रूप से इसे अंतिम कॉलम के रूप में जोड़ा जाएगा।
  • कोई भी पहले या पहले से बनाई गई तालिका के विशिष्ट कॉलम के बाद भी एक नया कॉलम जोड़ सकता है।
  • आप एकल SQL क्वेरी का उपयोग करके एक समय में एक कॉलम या एक से अधिक कॉलम जोड़ सकते हैं।

<मजबूत> (ए)। किसी मौजूदा तालिका के अंत में एक नया स्तंभ जोड़ना

वाक्यविन्यास:

ALTER TABLE tablename ADD (ColumnName datatype);

कहां ,

  1. Tablename पहले से मौजूद तालिका का नाम है जिसमें आपको एक नया कॉलम जोड़ना है।
  2. Column_name उस कॉलम का नाम है जिसे पहले से मौजूद तालिका में जोड़ा जाना है।

उदाहरण:

सबसे पहले, हम “studentdb . नाम से एक डेटाबेस तैयार करेंगे " फिर उस डेटाबेस में हम एक टेबल "छात्र" बनाएंगे और टेबल में रिकॉर्ड डालेंगे। हम बाद के उदाहरणों के लिए उसी डेटाबेस और उसी तालिका पर विचार करेंगे।

अब, हम मौजूदा टेबल में एक नया कॉलम 'सिटी' जोड़ेंगे।

 mysql> USE studentdb;
 Database changed
 mysql> SELECT *FROM student;
 +---------+-----------+-----------+-------------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name |
 +---------+-----------+-----------+-------------+
 |       1 | Prajakta  |       101 | DBMS        |
 |       2 | Shweta    |       102 | CN          |
 |       3 | Nikita    |       103 | OS          |
 |       4 | Ankita    |       104 | C           |
 +---------+-----------+-----------+-------------+
 4 rows in set (0.00 sec)
 mysql> ALTER TABLE student ADD (City VARCHAR(20));
 Query OK, 4 rows affected (0.29 sec)
 Records: 4  Duplicates: 0  Warnings: 0
 mysql> SELECT *FROM student;
 +---------+-----------+-----------+-------------+------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name | City |
 +---------+-----------+-----------+-------------+------+
 |       1 | Prajakta  |       101 | DBMS        | NULL |
 |       2 | Shweta    |       102 | CN          | NULL |
 |       3 | Nikita    |       103 | OS          | NULL |
 |       4 | Ankita    |       104 | C           | NULL |
 +---------+-----------+-----------+-------------+------+
 4 rows in set (0.00 sec) 

मौजूदा छात्र तालिका में नया कॉलम 'सिटी' जोड़ा गया है। चूंकि, क्वेरी में हमने यह निर्दिष्ट नहीं किया है कि इसे कहां जोड़ा जाना है, इसलिए डिफ़ॉल्ट रूप से इसे अंतिम कॉलम के रूप में जोड़ा जाता है।

(B)मौजूदा तालिका में एक से अधिक कॉलम जोड़ना

वाक्यविन्यास:

ALTER TABLE tablename ADD (ColumnName1 datatype, ColumnName2 datatype);

उदाहरण:

अब, हम एक ही क्वेरी का उपयोग करके मौजूदा तालिका में दो नए कॉलम 'सिटी' और 'मार्क्स' जोड़ेंगे।

mysql> छात्र का उपयोग करें;

आउटपुट:

 Database changed
 mysql> SELECT *FROM student;
 +---------+-----------+-----------+-------------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name |
 +---------+-----------+-----------+-------------+
 |       1 | Prajakta  |       101 | DBMS        |
 |       2 | Shweta    |       102 | CN          |
 |       3 | Nikita    |       103 | OS          |
 |       4 | Ankita    |       104 | C           |
 +---------+-----------+-----------+-------------+
 4 rows in set (0.00 sec)
 mysql> ALTER TABLE student ADD (City VARCHAR(20),Marks INT);
 Query OK, 4 rows affected (0.40 sec)
 mysql> SELECT *FROM student; 

आउटपुट:

 +---------+-----------+-----------+-------------+------+-------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name | City | Marks |
 +---------+-----------+-----------+-------------+------+-------+
 |       1 | Prajakta  |       101 | DBMS        | NULL |  NULL |
 |       2 | Shweta    |       102 | CN          | NULL |  NULL |
 |       3 | Nikita    |       103 | OS          | NULL |  NULL |
 |       4 | Ankita    |       104 | C           | NULL |  NULL |
 +---------+-----------+-----------+-------------+------+-------+
 4 rows in set (0.00 sec) 

मौजूदा छात्र तालिका में नए कॉलम 'सिटी' और 'मार्क्स' जोड़े गए हैं। चूंकि, क्वेरी में हमने यह निर्दिष्ट नहीं किया है कि इसे कहां जोड़ा जाना है, इसलिए डिफ़ॉल्ट रूप से दोनों कॉलम एक ही क्वेरी का उपयोग करके सबसे अंत में जोड़े जाते हैं।

(C) किसी मौजूदा तालिका के पहले स्थान पर एक कॉलम जोड़ना

वाक्यविन्यास :

ALTER TABLE tablename ADD ColumnName datatype FIRST;

उदाहरण: अब, हम पहले कॉलम के रूप में मौजूदा तालिका में एक नया कॉलम 'Sr_No' जोड़ेंगे।

mysql> USE studentdb;

आउटपुट:

 Database changed
 mysql> SELECT *FROM student;
 +---------+-----------+-----------+-------------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name |
 +---------+-----------+-----------+-------------+
 |       1 | Prajakta  |       101 | DBMS        |
 |       2 | Shweta    |       102 | CN          |
 |       3 | Nikita    |       103 | OS          |
 |       4 | Ankita    |       104 | C           |
 +---------+-----------+-----------+-------------+
 4 rows in set (0.00 sec)
 mysql> ALTER TABLE student ADD Sr_No INT FIRST; 

आउटपुट:

 Query OK, 4 rows affected (0.24 sec)
 Records: 4  Duplicates: 0  Warnings: 0
 mysql> SELECT *FROM student; 

आउटपुट:

 +-------+---------+-----------+-----------+-------------+
 | Sr_No | Stud_ID | Stud_Name | Course_ID | Course_Name |
 +-------+---------+-----------+-----------+-------------+
 |  NULL |       1 | Prajakta  |       101 | DBMS        |
 |  NULL |       2 | Shweta    |       102 | CN          |
 |  NULL |       3 | Nikita    |       103 | OS          |
 |  NULL |       4 | Ankita    |       104 | C           |
 +-------+---------+-----------+-----------+-------------+
 4 rows in set (0.00 sec) 

मौजूदा छात्र तालिका में नया कॉलम 'Sr_No' जोड़ा गया है। चूंकि, क्वेरी में हमने 'FIRST' कीवर्ड निर्दिष्ट किया है, इसलिए 'Sr_No' को पहले कॉलम के रूप में जोड़ा गया है।

(D) किसी मौजूदा तालिका के विशिष्ट कॉलम के बाद एक नया कॉलम जोड़ना

वाक्यविन्यास:

ALTER TABLE tablename ADD ColumnName datatype AFTER column_name;

उदाहरण:

अब, हम 'Course_Name' के बाद मौजूदा तालिका में एक नया कॉलम 'चिह्न' जोड़ देंगे।

mysql> USE studentdb;

आउटपुट:

 Database changed
 mysql> SELECT *FROM student; 

आउटपुट:

 +---------+-----------+-----------+-------------+------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name | City |
 +---------+-----------+-----------+-------------+------+
 |       1 | Prajakta  |       101 | DBMS        | NULL |
 |       2 | Shweta    |       102 | CN          | NULL |
 |       3 | Nikita    |       103 | OS          | NULL |
 |       4 | Ankita    |       104 | C           | NULL |
 +---------+-----------+-----------+-------------+------+
 4 rows in set (0.00 sec)
 mysql> ALTER TABLE student ADD Marks INT AFTER Course_Name; 

आउटपुट :

 Query OK, 4 rows affected (0.28 sec)
 Records: 4  Duplicates: 0  Warnings: 0 
mysql> SELECT *FROM student;

आउटपुट:

 +---------+-----------+-----------+-------------+-------+------+
 | Stud_ID | Stud_Name | Course_ID | Course_Name | Marks | City |
 +---------+-----------+-----------+-------------+-------+------+
 |       1 | Prajakta  |       101 | DBMS        |  NULL | NULL |
 |       2 | Shweta    |       102 | CN          |  NULL | NULL |
 |       3 | Nikita    |       103 | OS          |  NULL | NULL |
 |       4 | Ankita    |       104 | C           |  NULL | NULL |
 +---------+-----------+-----------+-------------+-------+------+
 4 rows in set (0.00 sec) 

मौजूदा छात्र तालिका में नया कॉलम 'अंक' जोड़ा गया है। चूंकि, क्वेरी में हमने कॉलम नाम के साथ 'AFTER' कीवर्ड निर्दिष्ट किया है जिसके बाद नया कॉलम जोड़ा जाना है। इसलिए, 'पाठ्यक्रम_नाम' के बाद 'चिह्न' जोड़ा जाता है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्लाउड साइट्स में डेटाबेस बनाना

  2. ओलंपिक खेलों, यूईएफए यूरो 2016 फुटबॉल मैच और डेटाबेस में क्या समानता है?

  3. 8 WP-CLI आपकी साइट को साफ और अनुकूलित करने के लिए आदेश देता है

  4. नेक्स्टफॉर्म मल्टी-टेबल विजार्ड के साथ डीबी माइग्रेशन

  5. कैसेंड्रा को आईआरआई फील्डशील्ड के साथ मास्क कैसे करें