MySQL टेबल में एकल कॉलम के सभी मानों को अपडेट करने के लिए UPDATE और SET का उपयोग करें।
टेबल बनाएं
mysql> CREATE TABLE DemoTable1873 (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
FirstName VARCHAR(20)
);
डेटा डालें
mysql> INSERT INTO DemoTable1873(FirstName) VALUES('John'), ('Adam'), ('David'), ('Sam');
सभी पंक्तियों में FirstName अपडेट करें
mysql> UPDATE DemoTable1873 SET FirstName = 'Robert';
आउटपुट:
Query OK, 4 rows affected (0.00 sec) Rows matched: 4 Changed: 4 Warnings: 0
परिणाम
+----+-----------+ | Id | FirstName | +----+-----------+ | 1 | Robert | | 2 | Robert | | 3 | Robert | | 4 | Robert | +----+-----------+
WHERE क्लॉज के साथ विशिष्ट पंक्तियाँ अपडेट करें
UPDATE DemoTable1873 SET FirstName = 'Robert' WHERE Id = 2;
सर्वोत्तम अभ्यास
- हमेशा WHERE क्लॉज उपयोग करें जब तक सभी पंक्तियाँ अपडेट न करनी हों।
- पहले
SELECTसे प्रभावित पंक्तियाँ जांचें:SELECT * FROM table WHERE condition। - बड़े अपडेट के लिए बैच में करें (
LIMIT 1000लूप) लॉक कम करने के लिए। - इंडेक्स वाले कॉलम अपडेट करने पर इंडेक्स पुनर्निर्माण होता है; प्रदर्शन प्रभाव।
- ट्रांजैक्शन में लपेटें:
START TRANSACTION; UPDATE ...; COMMIT;
बहु-कॉलम अपडेट
UPDATE DemoTable1873 SET FirstName = 'Robert', LastName = 'Smith' WHERE Id = 1;