本文主要是介绍python连接mysql数据库、FastAPI、mysql-connector-python,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
方法工具一、FastAPI
建议使用fast api中的pymysql
pip3 install fastapi
pip3 install pydantic
pip3 install "uvicorn[standard]"
pip3 中的3是 Python 3 版本的包管理器命令,用于安装和管理 Python 3 版本的第三方库。在某些系统中,同时安装了 Python 2 和 Python 3,为了区分两个版本的 pip 命令,Python 3 版本的 pip 命令被命名为 pip3。这样可以确保在命令行中使用 pip3 命令时,安装的库将会与 Python 3 版本关联。
from fastapi import FastAPI
#项目名称 = FastAPI()
#如:link = FastAPI()
@link.get("/")
import pymysql
db = pymysql.connect(host='1.0.0.2',user='root',password='CSDN-jingyu1610',database='mysql',charset='utf8',autocommit=True,cursorclass=pymysql.cursors.DictCursor)
#解释
db = pymysql.connect(host='数据库IP地址',user='数据库',password='登录mysql数据库的密码,注意不是登录linux系统的密码',database='连接的数据库',charset='utf8',表示使用 UTF-8 字符集进行数据的编码和解码。autocommit=True,:表示开启自动提交模式。在自动提交模式下,每个 SQL 语句执行完成后会自动进行提交,不需要手动调用 commit() 方法。cursorclass=pymysql.cursors.DictCursor):表示使用字典类型的游标。使用字典类型的游标可以方便地通过列名来访问查询结果,而不是通过列索引。
使用 autocommit=True
和 cursorclass=pymysql.cursors.DictCursor
参数可以实现以下功能:
- 开启自动提交,减少手动提交的操作。
- 使用字典类型的游标,方便使用列名来操作查询结果。
详细解释charset='utf8'
表示使用 UTF-8 字符集进行数据的编码和解码。
UTF-8 是一种可变长度的字符编码方式,可以表示世界上几乎所有的字符。使用 UTF-8 编码可以保证数据在传输和存储时,不会出现字符乱码的问题。
设置 charset='utf8'
参数后,pymysql 在连接数据库时会将客户端和服务器之间的通信字符集设置为 UTF-8,这样可以保证数据库和应用程序之间的数据能够正确地进行编码和解码。
方法工具二、mysql-connector-python
mysql-connect-python工具不属于FastAPI当中。
要在Python中连接MySQL数据库,你可以使用一个称为mysql-connector-python
的库。
首先,确保你已经安装了这个库。你可以使用以下命令进行安装:
如果不知道可以使用pip -V查看版本。
一旦安装了库,你可以使用以下代码片段来连接到MySQL数据库:
确保将your_username
,your_password
,your_host
,your_database
和your_table
替换为你的实际值。这样你就可以连接到MySQL数据库并执行查询了。
pip3 install mysql-connector-python
import mysql.connector# 创建数据库连接
cnx = mysql.connector.connect(user='your_username', password='your_password',host='your_host', database='your_database')方法一、
# 执行SQL查询
mycursor.execute("SELECT * FROM yourtablename")# 获取查询结果
myresult = mycursor.fetchall()
for x in myresult:print(x)
#关闭连接在完成所有数据库操作后,应关闭游标和数据库连接
mycursor.close()
mydb.close()方法二、
# 创建游标对象,用于执行SQL查询
cursor = cnx.cursor()# 执行SQL查询
query = 'SELECT * FROM your_table'
cursor.execute(query)# 获取查询结果
for row in cursor:print(row)# 关闭游标和数据库连接
cursor.close()
cnx.close()
检查连接
您可以通过检查mydb.is_connected()
来验证是否成功连接到数据库。
if mydb.is_connected():print("成功连接到MySQL数据库")
注意事项
- 确保您的MySQL服务正在运行,并且您有正确的访问权限。
- 根据您的数据库设置,数据库地址、端口等信息可能有所不同。
- 在生产环境中,不要在代码中硬编码数据库凭据,应该使用配置文件或环境变量来管理这些敏感信息。
这篇关于python连接mysql数据库、FastAPI、mysql-connector-python的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!