MySQL में RENAME TABLE कमांड के साथ तालिका नाम बदलना
MySQL में RENAME TABLE स्टेटमेंट का उपयोग करके मौजूदा तालिका का नाम बदला जा सकता है। यह ऑपरेशन परमाणु होता है और तालिका संरचना, डेटा, इंडेक्स आदि को बरकरार रखता है।
सिंटैक्स
RENAME TABLE old_table_name TO new_table_name;
व्यावहारिक उदाहरण
मूल तालिका बनाना
mysql> CREATE TABLE DemoTable1 (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
UserName VARCHAR(100),
UserAge INT,
UserCountryName VARCHAR(100)
);
तालिका संरचना देखना
mysql> DESC DemoTable1;
आउटपुट:
+-----------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------+--------------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | UserName | varchar(100) | YES | | NULL | | | UserAge | int(11) | YES | | NULL | | | UserCountryName | varchar(100) | YES | | NULL | | +-----------------+--------------+------+-----+---------+----------------+
तालिका का नाम बदलना
mysql> RENAME TABLE DemoTable1 TO DemoTable2;
आउटपुट: Query OK, 0 rows affected
नाम बदलने के बाद संरचना देखना
mysql> DESC DemoTable2;
आउटपुट (संरचना समान रहती है):
+-----------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------+--------------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | UserName | varchar(100) | YES | | NULL | | | UserAge | int(11) | YES | | NULL | | | UserCountryName | varchar(100) | YES | | NULL | | +-----------------+--------------+------+-----+---------+----------------+
महत्वपूर्ण बिंदु
- एक ही स्टेटमेंट में कई तालिकाओं का नाम बदला जा सकता है:
RENAME TABLE t1 TO t2, t3 TO t4; - तालिका लॉक की जाती है नाम बदलने के दौरान
- विदेशी कुंजी प्रतिबंध स्वचालित रूप से अपडेट हो जाते हैं
ALTER TABLE old_name RENAME TO new_name;भी काम करता है