如何使用 Python 更新 MySQL 表中的某些值?

表格中的数据可能已过时,我们可能会在一段时间后要求更改数据。假设我们有一张学生表,其中一个学生改变了他们的地址。我们要求更改数据库中学生的地址,以避免将来因数据错误而出现任何问题。

MySQL 中的“UPDATE”语句用于更新某些值,table.TheSET 子句用于设置列中的新值。WHERE 子句用于标识我们需要在表中的哪个位置更新数据或值。

语法

UPDATE table_name SET column=new_value WHERE column=old_value

在python中使用MySQL更新表中数据的步骤

  • 导入 MySQL 连接器

  • 使用连接器建立连接 connect()

  • 使用cursor()方法创建游标对象

  • 使用适当的 mysql 语句创建查询

  • 使用execute()方法执行 SQL 查询

  • 提交使用commit()方法所做的更改

  • 关闭连接

假设我们有一个名为“Student”的表,如下所示 -

+----------+---------+-----------+------------+
|    Name  | Class   |    City   |    Marks   |
+----------+---------+-----------+------------+
|    Karan |    4    | Amritsar  |    95      |
|    Sahil |    6    | Amritsar  |    93      |
|    Kriti |    3    | Batala    |    88      |
|   Khushi |    9    | Delhi     |    90      |
|    Kirat |    5    | Delhi     |    85      |
+----------+---------+-----------+------------+

示例

假设我们有上表的学生,我们想将 Kriti 市从 Batala 更新为 Kolkata。

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query="UPDATE Students SET City='Kolkata' WHERE Name='Kriti'"
cursor.execute(query)
db.commit()

query="SELECT * FROM Students"
cursor.execute(query)

for row in cursor:
   print(row)
db.close()

上面的代码更新了 Kriti 的城市名称。

输出结果

(‘Karan’, 4 ,’Amritsar’ , 95)
(‘Sahil’ , 6 , ‘Amritsar’ ,93)
(‘Kriti’ , 3 , ‘Kolkata’ ,88)
(‘Amit’ , 9 , ‘Delhi’ , 90)
(‘Priya’ , 5 , ‘Delhi’ ,85)

笔记

在上面的代码是很重要的。它用于提交对表所做的更改。如果不使用,则不会对表进行任何更改。db.commit() commit()

猜你喜欢