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

MySQL में UPDATE से पूरी पंक्ति (रो) कैसे अपडेट करें?

MySQL में प्राइमरी की का उपयोग करके किसी पंक्ति के सभी कॉलम एक साथ अपडेट करने के लिए UPDATE स्टेटमेंट में सभी कॉलम निर्दिष्ट करें।

सिंटैक्स

UPDATE yourTableName 
SET column1 = 'value1', 
    column2 = 'value2', 
    column3 = 'value3',
    ...
WHERE primaryKeyColumn = primaryKeyValue;

उदाहरण के साथ समझें

टेबल बनाएं:

CREATE TABLE UpdateEntireRowDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    Name VARCHAR(20),
    Age INT,
    Marks INT,
    PRIMARY KEY(Id)
);

रिकॉर्ड डालें:

INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('Sam', 23, 78);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('Mike', 21, 99);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('Carol', 26, 80);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('John', 22, 71);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('Bob', 29, 89);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('David', 25, 68);
INSERT INTO UpdateEntireRowDemo(Name, Age, Marks) VALUES('Larry', 31, 91);

सभी रिकॉर्ड देखें:

SELECT * FROM UpdateEntireRowDemo;

आउटपुट:

+----+-------+------+-------+
| Id | Name  | Age  | Marks |
+----+-------+------+-------+
| 1  | Sam   | 23   | 78    |
| 2  | Mike  | 21   | 99    |
| 3  | Carol | 26   | 80    |
| 4  | John  | 22   | 71    |
| 5  | Bob   | 29   | 89    |
| 6  | David | 25   | 68    |
| 7  | Larry | 31   | 91    |
+----+-------+------+-------+

Id=5 की पूरी पंक्ति अपडेट करने का क्वेरी

UPDATE UpdateEntireRowDemo 
SET Name = 'James', Age = 19, Marks = 78 
WHERE Id = 5;

परिणाम: Query OK, 1 row affected (0.12 sec) Rows matched: 1 Changed: 1 Warnings: 0

अपडेट की गई पंक्ति जांचें

SELECT * FROM UpdateEntireRowDemo WHERE Id = 5;

आउटपुट:

+----+-------+------+-------+
| Id | Name  | Age  | Marks |
+----+-------+------+-------+
| 5  | James | 19   | 78    |
+----+-------+------+-------+

सभी रिकॉर्ड फिर से देखें

SELECT * FROM UpdateEntireRowDemo;

आउटपुट (पंक्ति 5 अपडेटेड):

+----+-------+------+-------+
| Id | Name  | Age  | Marks |
+----+-------+------+-------+
| 1  | Sam   | 23   | 78    |
| 2  | Mike  | 21   | 99    |
| 3  | Carol | 26   | 80    |
| 4  | John  | 22   | 71    |
| 5  | James | 19   | 78    |
| 6  | David | 25   | 68    |
| 7  | Larry | 31   | 91    |
+----+-------+------+-------+

महत्वपूर्ण बिंदु

  • WHERE क्लॉज अनिवार्य है - बिना इसके सभी पंक्तियाँ अपडेट हो जाएंगी
  • प्राइमरी की पर अपडेट करना सबसे सुरक्षित और तेज़ है
  • सभी कॉलम निर्दिष्ट करने की आवश्यकता नहीं - केवल जो बदलने हैं
  • Rows matched: 1 Changed: 1 का अर्थ: 1 पंक्ति मिली, 1 वास्तव में बदली

बचने योग्य गलतियाँ

-- खतरनाक: WHERE के बिना सभी पंक्तियाँ अपडेट हो जाएंगी
UPDATE UpdateEntireRowDemo SET Name = 'James', Age = 19, Marks = 78;
  1. Java MySQL का उपयोग करके MySQL टेबल अपडेट करें Java MySQL का उपयोग करके MySQL टेबल अपडेट करें

    JDBC में PreparedStatement का उपयोग करके पैरामीटरीकृत अपडेट को सुरक्षित रूप से निष्पादित करें। टेबल बनाना और डेटा डालना CREATE TABLE DemoTable(Id INT, FirstName VARCHAR(40)); Query OK, 0 rows affected (0.62 sec) INSERT INTO DemoTable VALUES(100,Chris),(111,Mike),(121,Sam); अपडेट से पहले SELECT

  1. - MySQL टेबल को बैच अपडेट कैसे करें?

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> BreakfastTime time -> ); Query OK, 0 rows affected (0.59 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(7:30:45); Query OK, 1 row affected (0.19 sec) mysql> insert i

  1. - MySQL: GROUP BY के साथ फील्ड कैसे अपडेट करें?

    समस्या MySQL सीधे UPDATE में GROUP BY का समर्थन नहीं करता। समाधान: ORDER BY LIMIT का उपयोग करें। उदाहरण टेबल बनाएं: ); डेटा डालें: INSERT INTO DemoTable2018 (EmployeeName, EmployeeSalary) VALUES (Chris, 25400); अपडेट क्वेरी Chris की पहली प्रविष्टि (EmployeeId के अनुसार) का वेतन बढ़ाएं: ORDER B