Python更新数据库中某个字段的数据
在Python中,更新数据库中的某个字段通常使用SQL语句进行操作。具体方法有多种,本篇文章将详细介绍三种更新数据库中某个字段的方法。
方法一:使用MySQLdb模块实现数据更新
使用MySQLdb模块,我们可以连接MySQL数据库,并使用execute()方法执行SQL语句来更新数据。下面是一段使用MySQLdb模块更新'example_db'数据库中的'table1'表中'score'字段的代码。
import MySQLdb
# 打开数据库连接
db = MySQLdb.connect("localhost","root","root","example_db" )
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 更新语句
sql = "UPDATE table1 SET score = score + 10 WHERE id = 1"
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 发生错误时回滚
db.rollback()
# 关闭数据库连接
db.close()
运行结果:
Update affected rows: 1
方法二:使用PyMySQL模块实现数据更新
PyMySQL是Python的一个第三方模块,可以用来连接MySQL数据库并进行数据操作。下面是一段使用PyMySQL模块更新'example_db'数据库中的'table1'表中'score'字段的代码。
import pymysql
# 打开数据库连接
db = pymysql.connect("localhost","root","root","example_db")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# SQL 更新语句
sql = "UPDATE table1 SET score = score + 10 WHERE id = 1"
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
print("Update affected rows:", cursor.rowcount)
except:
# 发生错误时回滚
db.rollback()
# 关闭数据库连接
db.close()
运行结果:
Update affected rows: 1
方法三:使用sqlalchemy模块实现数据更新
sqlalchemy是Python的一种ORM(Object-Relational Mapping)框架,可以帮助我们方便地操作数据库。下面是一段使用sqlalchemy模块更新'example_db'数据库中的'table1'表中'score'字段的代码。
from sqlalchemy import create_engine, Column, Integer
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# 建立连接
engine = create_engine('mysql+pymysql://root:root@localhost:3306/example_db')
Base = declarative_base()
# 定义数据模型
class Table1(Base):
__tablename__ = 'table1'
id = Column(Integer, primary_key=True)
score = Column(Integer)
# 建立session
Session = sessionmaker(bind=engine)
session = Session()
# 更新数据库
try:
obj = session.query(Table1).filter(Table1.id==1).first()
obj.score += 10
session.commit()
print("Update affected rows: 1")
except:
session.rollback()
finally:
session.close()
运行结果:
Update affected rows: 1
通过以上三种方法,使用Python更新数据库中某个字段的数据应该不是很难了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python更新数据库中某个字段的数据(方法详解) - Python技术站