在编程领域,Python因其简单易学、功能强大的特点,深受广大开发者的喜爱,在项目开发过程中,我们常常需要与数据库进行交互,那么如何使用Python调用数据库呢?我将为大家详细介绍几种常用的数据库连接方式及其操作方法。
准备工作
在开始之前,我们需要确保已经安装了Python环境以及相应的数据库,以下示例中,我将使用MySQL数据库作为演示,我们需要安装一个用于连接MySQL数据库的Python库——PyMySQL。
安装PyMySQL:
pip install pymysql
连接MySQL数据库
连接数据库是进行数据库操作的第一步,下面,我们来看看如何使用PyMySQL连接MySQL数据库。
1、导入PyMySQL库:
import pymysql
2、创建连接:
连接参数
config = {
'host': 'localhost',
'port': 3306,
'user': 'root',
'password': '123456',
'database': 'test',
'charset': 'utf8'
}
创建连接
conn = pymysql.connect(**config)这里,我们定义了一个字典config,包含了连接MySQL数据库所需的所有参数,使用pymysql.connect()函数创建连接。
操作数据库
连接数据库后,我们可以执行SQL语句来操作数据库,以下是常用的数据库操作方法。
1、执行查询操作:
创建游标
cursor = conn.cursor()
执行SQL查询
sql = "SELECT * FROM user"
cursor.execute(sql)
获取所有结果
results = cursor.fetchall()
for row in results:
print(row)
关闭游标
cursor.close()这里,我们使用cursor()方法创建了一个游标对象,然后执行SQL查询。fetchall()方法用于获取所有查询结果。
2、执行增删改操作:
创建游标
cursor = conn.cursor()
执行SQL插入
sql = "INSERT INTO user (name, age) VALUES (%s, %s)"
data = ('张三', 18)
cursor.execute(sql, data)
提交事务
conn.commit()
关闭游标
cursor.close()在进行增删改操作时,我们需要使用commit()方法提交事务,确保数据被成功写入数据库。
使用ORM框架——SQLAlchemy
除了直接使用PyMySQL操作数据库外,我们还可以使用ORM(对象关系映射)框架来简化数据库操作,SQLAlchemy是一个常用的Python ORM框架。
1、安装SQLAlchemy:
pip install sqlalchemy
2、使用SQLAlchemy操作数据库:
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
定义基类
Base = declarative_base()
定义User模型
class User(Base):
__tablename__ = 'user'
id = Column(Integer, primary_key=True)
name = Column(String(50))
age = Column(Integer)
创建数据库引擎
engine = create_engine('mysql+pymysql://root:123456@localhost:3306/test?charset=utf8')
创建表
Base.metadata.create_all(engine)
创建会话
Session = sessionmaker(bind=engine)
session = Session()
添加数据
new_user = User(name='李四', age=20)
session.add(new_user)
提交事务
session.commit()
查询数据
users = session.query(User).filter_by(name='李四').all()
for user in users:
print(user.name, user.age)
关闭会话
session.close()这里,我们首先定义了一个User模型,对应数据库中的user表,使用create_engine()函数创建数据库引擎,再通过会话(session)进行数据库操作。
注意事项
1、在操作数据库时,请注意SQL注入的风险,尽量使用参数化查询。
2、确保在操作完毕后,关闭游标和连接,释放资源。
通过以上介绍,相信大家对如何使用Python调用数据库有了基本的了解,在实际项目开发中,我们可以根据自己的需求选择合适的库和框架来操作数据库,希望这篇文章能对大家有所帮助。

