Python中使用SQLAlchemy入门

2023-04-05 00:00:00 python sqlalchemy 入门

SQLAlchemy是一种Python的ORM框架,它提供了一种更加灵活和高性能的方式来操作数据库,使得数据库操作更加简单和方便。本文将演示如何使用SQLAlchemy进行入门编程。

安装SQLAlchemy

首先需要安装SQLAlchemy库。可以通过pip来安装SQLAlchemy,命令如下:

pip install sqlalchemy

连接数据库

在Python中连接数据库的方式有很多种,SQLAlchemy最常用的连接方式是使用连接字符串,这个字符串包含连接数据库所需的信息。下面是一个使用连接字符串连接MySQL数据库的例子:

from sqlalchemy import create_engine

# 连接MySQL的连接字符串,数据库名称为test,用户名为root,密码为123456
db_uri = 'mysql+pymysql://root:123456@localhost/test?charset=utf8'

# 创建数据库连接
engine = create_engine(db_uri, echo=True)

# 测试连接是否成功
conn = engine.connect()
conn.close()

使用ORM模型

ORM模型是SQLAlchemy的核心之一,它将数据库表映射成Python类,可以通过Python类来操作数据库表。下面是一个简单的ORM模型的例子:

from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class User(Base):
    __tablename__ = 'user'

    id = Column(Integer, primary_key=True, autoincrement=True)
    name = Column(String(20))
    age = Column(Integer)

以上代码定义了一个名为User的ORM模型,它将数据库中的user表映射成一个Python类。类中的每个属性对应表中的一个字段。通过ORM模型,就可以使用Python代码对数据库进行操作了,比如插入一条记录:

# 插入一条记录
user = User(name='pidancode.com', age=18)
session.add(user)
session.commit()

使用查询器进行查询

SQLAlchemy的查询器使得对数据库的查询更加方便。下面是一个使用查询器查询纪录的例子:

# 查询年龄大于18的记录
users = session.query(User).filter(User.age > 18).all()
for user in users:
    print(user.name, user.age)

以上代码查询了数据库中年龄大于18的记录并打印出来。

总结

SQLAlchemy的使用非常灵活,它可以连接多种类型的数据库,使用ORM模型操作数据库非常方便,而查询器使得对数据库的查询更加方便。这些功能使得使用SQLAlchemy编写Python程序的数据库操作变得简单而高效。

相关文章