Python 更新写入MySQL
Python 是一种流行的编程语言,广泛应用于数据处理、网络编程等多个领域。MySQL 则是一个开源的关系型数据库管理系统,常用于存储和管理数据。在实际项目中,我们经常需要使用 Python 与 MySQL 进行交互,包括更新和写入数据到数据库中。
本文将详细介绍如何使用 Python 更新和写入数据到 MySQL 数据库中。我们将先介绍如何连接到 MySQL 数据库,然后演示如何更新和插入数据,最后给出一些实用的示例代码。
连接到MySQL数据库
在 Python 中,我们可以使用第三方库 pymysql
来连接到 MySQL 数据库。在使用之前,我们需要先安装该库:
pip install pymysql
接下来,我们可以通过以下代码连接到 MySQL 数据库:
import pymysql
# 连接数据库
conn = pymysql.connect(
host="localhost",
user="root",
password="password",
database="test_db"
)
# 创建游标对象
cur = conn.cursor()
# 执行 SQL 查询
cur.execute("SELECT * FROM users")
# 获取查询结果
result = cur.fetchall()
# 打印结果
for row in result:
print(row)
# 关闭游标和连接
cur.close()
conn.close()
运行以上代码,我们可以连接到名为 test_db
的数据库,并查询名为 users
的表中的所有数据。
更新数据
若我们想要更新数据库中的数据,可以使用 UPDATE
语句。以下是一个示例代码,将 users
表中 id
为1的记录的 name
字段更新为 geek-docs.com
。
# 更新数据
cur.execute("UPDATE users SET name='geek-docs.com' WHERE id=1")
# 提交更改
conn.commit()
# 输出更新后的结果
cur.execute("SELECT * FROM users")
result = cur.fetchall()
for row in result:
print(row)
运行以上代码,我们可以看到 id
为1的记录的 name
字段已经成功更新为 geek-docs.com
。
插入数据
若我们想要向数据库中插入新的数据,可以使用 INSERT INTO
语句。以下是一个示例代码,向 users
表中插入一条新的记录。
# 插入数据
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 25)")
# 提交更改
conn.commit()
# 输出新增后的结果
cur.execute("SELECT * FROM users")
result = cur.fetchall()
for row in result:
print(row)
运行以上代码,我们可以看到在 users
表中成功插入了一条新的记录。
示例代码
接下来,我们给出一些更加实用的示例代码,来演示如何批量更新和插入数据。
批量更新数据
若我们想要批量更新数据库中的数据,可以使用 UPDATE
语句结合 executemany
方法。以下是一个示例代码,将 users
表中所有 age
大于30岁的记录的 name
字段更新为 geek-docs.com
。
# 批量更新数据
cur.executemany("UPDATE users SET name='geek-docs.com' WHERE age > 30")
# 提交更改
conn.commit()
# 输出更新后的结果
cur.execute("SELECT * FROM users")
result = cur.fetchall()
for row in result:
print(row)
批量插入数据
若我们想要批量向数据库中插入新的数据,可以使用 INSERT INTO
语句结合 executemany
方法。以下是一个示例代码,向 users
表中插入多条新的记录。
# 批量插入数据
data = [
('Bob', 20),
('Cathy', 35),
('David', 28)
]
cur.executemany("INSERT INTO users (name, age) VALUES (%s, %s)", data)
# 提交更改
conn.commit()
# 输出新增后的结果
cur.execute("SELECT * FROM users")
result = cur.fetchall()
for row in result:
print(row)
总结
本文介绍了如何使用 Python 更新和写入数据到 MySQL 数据库中,包括连接到数据库、更新数据、插入数据以及批量更新和插入数据。