引言
随着互联网和大数据技术的飞速发展,数据库操作在软件开发中扮演着越来越重要的角色。Python作为一种功能强大的编程语言,拥有丰富的数据库操作库和ORM(对象关系映射)框架。本文将详细介绍Python数据库操作的基本方法,并深入探讨如何使用ORM框架简化数据库操作。
Python数据库操作基础
1. 数据库连接
在Python中,常用的数据库连接库有sqlite3
、mysql-connector-python
、pymysql
等。以下是一个使用sqlite3
连接数据库的示例:
import sqlite3
# 创建连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
2. 数据库操作
数据库操作主要包括查询(SELECT)、插入(INSERT)、更新(UPDATE)和删除(DELETE)。
查询
# 查询数据
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
for row in rows:
print(row)
插入
# 插入数据
cursor.execute("INSERT INTO users (name, age) VALUES ('Alice', 28)")
conn.commit()
更新
# 更新数据
cursor.execute("UPDATE users SET age = 29 WHERE name = 'Alice'")
conn.commit()
删除
# 删除数据
cursor.execute("DELETE FROM users WHERE name = 'Alice'")
conn.commit()
ORM框架:SQLAlchemy
SQLAlchemy是一个功能强大的ORM框架,它允许开发者使用Python对象操作数据库,而无需编写SQL语句。
1. 定义模型
在SQLAlchemy中,首先需要定义模型类,将数据库表映射为Python类。
from sqlalchemy import create_engine, Column, Integer, String
# 创建引擎
engine = create_engine('sqlite:///example.db')
# 定义模型
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
age = Column(Integer)
2. 创建数据库表
# 创建表
Base.metadata.create_all(engine)
3. 数据库操作
使用SQLAlchemy操作数据库,只需要使用Python对象的方法即可。
from sqlalchemy.orm import sessionmaker
# 创建会话
Session = sessionmaker(bind=engine)
session = Session()
# 查询
user = session.query(User).filter_by(name='Alice').first()
print(user.name, user.age)
# 插入
new_user = User(name='Bob', age=30)
session.add(new_user)
session.commit()
# 更新
user.age = 31
session.commit()
# 删除
session.delete(user)
session.commit()
总结
通过本文的介绍,相信你已经掌握了Python数据库操作的基本方法和SQLAlchemy ORM框架的使用。在实际开发中,ORM框架可以大大提高开发效率,简化数据库操作。希望本文对你有所帮助。