FastAPI 学习之路(三十二)创建数据库

FastAPI与MySQL数据库交互实战
本文通过Python的SQLAlchemy库展示了如何在FastAPI中连接并操作MySQL数据库。首先安装必要的依赖,如`sqlalchemy`和`fastapi-async-sqlalchemy`。接着创建数据库引擎和会话实例,并定义User和Item两个数据库模型。通过`Base.metadata.create_all()`方法将模型映射到数据库表。现在,你可以使用这些模型进行数据库的增删改查操作。

在大型的web开发中,我们肯定会用到数据库操作,那么FastAPI也支持数据库的开发,你可以用PostgreSQL,MySQL,SQLite,Oracle等

本文使用Mysql为例,我们看下在fastapi中是如何操作设计数据库的

 安装依赖

pip install sqlalchemy

也有支持异步的,但是没有上面那个成熟

pip install fastapi-async-sqlalchemy

我们看下如何在项目中使用

 

from sqlalchemy import create_engine, ForeignKey
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker, relationship
from sqlalchemy import Column, Integer, String, Boolean

mysql_url = "mysql+pymysql://{username}:{password}@{host}:{port}/{database}?charset=utf8".format(
    username="root", password="xxx", host="xxx", port=3306, database="sqlalchemy_db")
# SQLALCHEMY_DATABASE_URL = "sqlite:///.test.db"
engine = create_engine(
    mysql_url,
    # SQLALCHEMY_DATABASE_URL,
    # connect_args 参数只有sqlite才有
    # connect_args = {
    #     "check_same_thread": False
    # }
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值