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

MySQL में ALTER TABLE DROP INDEX का उपयोग करके टेबल से इंडेक्स हटाना

MySQL में इंडेक्स हटाना: ALTER TABLE DROP INDEX

MySQL टेबल से मौजूदा इंडेक्स हटाने के लिए, इंडेक्स नाम के साथ ALTER TABLE ... DROP INDEX स्टेटमेंट का उपयोग करें।

उदाहरण: इंडेक्स बनाना और हटाना

mysql> CREATE TABLE DemoTable1469 (
    -> StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> StudentName VARCHAR(40),
    -> StudentAge INT
    -> );
Query OK, 0 rows affected (0.78 sec)

-- StudentName पर इंडेक्स बनाएं
mysql> CREATE INDEX `Student Name_Index` ON DemoTable1469 (StudentName);
Query OK, 0 rows affected (0.33 sec)

-- टेबल विवरण जांचें (इंडेक्स दिखाता है)
mysql> DESC DemoTable1469;
+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| StudentId   | int(11)     | NO   | PRI | NULL    | auto_increment |
| StudentName | varchar(40) | YES  | MUL | NULL    |                |
| StudentAge  | int(11)     | YES  |     | NULL    |                |
+-------------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

Key = MUL दर्शाता है कि StudentName पर इंडेक्स है।

इंडेक्स हटाएं

mysql> ALTER TABLE DemoTable1469 DROP INDEX `Student Name_Index`;
Query OK, 0 rows affected (0.23 sec)
Records: 0  Duplicates: 0  Warnings: 0

सत्यापन: इंडेक्स हटाने के बाद

mysql> DESC DemoTable1469;
+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| StudentId   | int(11)     | NO   | PRI | NULL    | auto_increment |
| StudentName | varchar(40) | YES  |     | NULL    |                |
| StudentAge  | int(11)     | YES  |     | NULL    |                |
+-------------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

Key कॉलम अब StudentName के लिए खाली है (कोई इंडेक्स नहीं)।

इंडेक्स प्रबंधन सिंटैक्स

महत्वपूर्ण नोट्स

  • इंडेक्स नाम: बैकटिक्स का उपयोग करें यदि नाम में स्थान/विशेष वर्ण हैं
  • प्राथमिक कुंजी: DROP PRIMARY KEY का उपयोग करें (इंडेक्स नाम नहीं)
  • विदेशी कुंजी: DROP FOREIGN KEY fk_name का उपयोग करें
  • प्रदर्शन: बड़े टेबल पर DROP INDEX लॉक और पुनर्निर्माण का कारण बन सकता है

सभी इंडेक्स देखें

SHOW INDEX FROM DemoTable1469;
-- या
SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_NAME = 'DemoTable1469';
  1. - MySQL में DATE और NULL रिकॉर्ड वाली तालिका से तिथियों को फ़िल्टर करना

    MySQL में NULL मानों वाली तिथि कॉलम को फ़िल्टर करना जब तिथि कॉलम में NULL मान हों, तो तुलना ऑपरेटर्स का उपयोग करते समय सावधानी बरतनी पड़ती है क्योंकि NULL के साथ कोई भी तुलना UNKNOWN लौटाती है। व्यावहारिक उदाहरण तालिका बनाना CREATE TABLE DemoTable ( FirstDate DATETIME, SecondDate DATETIME

  1. - MySQL में केवल NULL मानों को कैसे बदलें?

    MySQL में NULL मानों को विशिष्ट मान से बदलना MySQL में IS NULL ऑपरेटर का उपयोग करके NULL मानों की पहचान की जाती है, और IF() या COALESCE() फंक्शन का उपयोग करके उन्हें बदला जा सकता है। उदाहरण: NULL नाम को डिफॉल्ट टेक्स्ट से बदलें टेबल बनाएं और डेटा डालें: CREATE TABLE DemoTable ( Name VARCHAR(100

  1. - MySQL में टेबल कॉलम को VARCHAR से NULL अनुमति वाले में बदलना

    ALTER TABLE CHANGE से कॉलम को NULL अनुमति देना मौजूदा VARCHAR कॉलम को NULL वैल्यू अनुमति देने के लिए (अगर पहले NOT NULL था) ALTER TABLE ... CHANGE का उपयोग करें। सिंटैक्स ALTER TABLE yourTableName CHANGE yourColumnName yourColumnName datatype NULL DEFAULT NULL; टेबल बनाना CREATE TABLE DemoTable13

© कॉपीराइट https://in.wsxdn.com सर्वाधिकार सुरक्षित
क्रियासिंटैक्स
इंडेक्स बनाएंCREATE INDEX idx_name ON table(col)
इंडेक्स बनाएं (ALTER)ALTER TABLE table ADD INDEX idx_name (col)
इंडेक्स हटाएंALTER TABLE table DROP INDEX idx_name
इंडेक्स हटाएं (DROP)DROP INDEX idx_name ON table
इंडेक्स देखेंSHOW INDEX FROM table