MySQL 中的 Python commit() 方法是什么?


commit() 方法是 Python 中用于执行数据库事务的多种方法之一。

在这里,我们将讨论 commit() 方法。commit() 方法用于确认用户对数据库所做的更改。每当使用更新或任何其他语句对数据库进行任何更改时,都需要提交这些更改。如果在对数据库进行任何更改后不使用 commit() 方法,则数据库将不会更新,并且更改不会反映出来。

语法

db.commit()

db 指的是数据库连接对象。

下面是一个示例,演示如何在表中更新值并将更改提交到数据库。

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

更新于:2021年6月10日

19K+ 次浏览

启动您的 职业生涯

完成课程获得认证

开始
广告