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

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

数据库中的数据可能已过时,我们可能需要在一段时间后更改数据。假设,我们有一个学生表,其中一个学生已更改了他们的地址。我们需要在数据库中更改学生的地址,以避免由于错误数据而引起任何问题。

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

更多Python相关文章,请阅读:Python 教程

语法

UPDATE table_name SET column=new_value WHERE column=old_value

使用Python在MySQL中更新表中的数据所涉及的步骤

  • import MySQL connector

  • 使用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(),则表中不会进行任何更改。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程