FastAPI连接MySQL
简介
FastAPI是一个用于构建高性能API的Python框架。它提供了极快的性能和直观的API设计,使开发者能够快速构建强大的Web应用程序。在实际应用中,通常需要与数据库进行交互,本文将介绍如何使用FastAPI连接MySQL数据库。
准备工作
在开始之前,我们需要确保已经安装了Python和FastAPI。此外,还需要安装Python的MySQL驱动程序,可以使用mysql-connector-python
库来实现与MySQL的连接。
可以使用以下命令来安装mysql-connector-python
库:
$ pip install mysql-connector-python
连接MySQL数据库
在FastAPI中连接MySQL数据库的过程非常简单。首先,我们需要导入mysql.connector
模块,并创建一个数据库连接对象。
import mysql.connector
# 创建数据库连接
conn = mysql.connector.connect(
host="localhost",
user="username",
password="password",
database="database_name"
)
在上面的代码中,我们使用mysql.connector.connect
方法来创建与MySQL数据库的连接。需要提供主机名、用户名、密码和数据库名称作为参数。
执行SQL查询
一旦与数据库建立了连接,我们就可以执行SQL查询了。可以使用cursor
对象执行查询和获取结果。
# 创建游标
cursor = conn.cursor()
# 执行SQL查询
cursor.execute("SELECT * FROM table_name")
# 获取查询结果
result = cursor.fetchall()
# 打印结果
for row in result:
print(row)
# 关闭游标和连接
cursor.close()
conn.close()
在上面的代码中,我们首先创建了一个游标对象,然后使用execute
方法执行SQL查询语句。然后,使用fetchall
方法获取查询结果,并使用循环遍历结果集。
最后,我们需要关闭游标和连接,释放资源。
使用FastAPI进行数据库操作
FastAPI提供了一个简单而强大的API路由机制,可以轻松地处理与数据库的交互。我们可以在路由函数中执行数据库操作,并将结果作为JSON响应返回给客户端。
下面是一个使用FastAPI连接MySQL数据库的示例:
from fastapi import FastAPI
import mysql.connector
# 创建FastAPI实例
app = FastAPI()
# 创建数据库连接
conn = mysql.connector.connect(
host="localhost",
user="username",
password="password",
database="database_name"
)
# 创建游标
cursor = conn.cursor()
# 定义路由
@app.get("/items/{item_id}")
def read_item(item_id: int):
# 执行SQL查询
cursor.execute(f"SELECT * FROM items WHERE id={item_id}")
# 获取查询结果
result = cursor.fetchone()
# 返回结果
return {"item": result}
# 关闭游标和连接
cursor.close()
conn.close()
在上面的代码中,我们首先创建了一个FastAPI
实例,并在路由函数中定义了一个GET请求的路由。路由函数中执行了SQL查询,并将结果作为JSON响应返回给客户端。
总结
本文介绍了如何使用FastAPI连接MySQL数据库。我们首先学习了如何使用mysql-connector-python
库连接MySQL数据库。然后,展示了如何执行SQL查询并获取结果。最后,我们使用FastAPI创建了一个简单的API路由,演示了如何将数据库查询结果作为JSON响应返回给客户端。
FastAPI是一个功能强大的Python框架,可以轻松地与MySQL数据库进行交互,为开发高性能的API提供了便利。希望本文能对你学习FastAPI连接MySQL数据库有所帮助。
引用
- [FastAPI官方文档](
- [MySQL Connector/Python官方文档](