如何使用 SQLAlchemy 进行数据库操作?

如何使用 SQLAlchemy 进行数据库操作?

步骤 1:导入库

from sqlalchemy import create_engine, MetaData, Table, Column

步骤 2:创建数据库连接

# 数据库名称
db_name = "my_database"

# 创建数据库引擎
engine = create_engine(f"sqlite:////tmp/{db_name}.db")

# 获取数据库上下文
metadata = MetaData()
metadata.create_all(engine)

步骤 3:创建表

# 表名
table_name = "users"

# 创建表
table = Table(table_name, metadata, autoload=True)
engine.create_all(table)

步骤 4:添加数据

# 创建数据对象
user = Table(
    "users",
    metadata,
    Column("name", String(80)),
    Column("email", String(120), unique=True),
)

# 添加数据
user.insert(name="John Doe", email="john.doe@example.com")

步骤 5:查询数据

# 查询所有用户
users = User.query.all()

# 查询特定用户
user = User.query.get(1)

# 打印用户姓名
print(user.name)

步骤 6:关闭数据库连接

engine.dispose()

示例代码:

import sqlalchemy

# 数据库名称
db_name = "my_database"

# 创建数据库连接
engine = create_engine(f"sqlite:////tmp/{db_name}.db")

# 获取数据库上下文
metadata = MetaData()
metadata.create_all(engine)

# 创建表
table = Table(
    "users",
    metadata,
    Column("name", String(80)),
    Column("email", String(120), unique=True),
)
engine.create_all(table)

# 添加数据
user = Table(
    "users",
    metadata,
    Column("name", String(80)),
    Column("email", String(120), unique=True),
)
user.insert(name="John Doe", email="john.doe@example.com")

# 查询所有用户
users = User.query.all()

# 打印用户姓名
for user in users:
    print(user.name)

# 关闭数据库连接
engine.dispose()
```
相似内容
更多>