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
方法工具一、FastAPI 建议使用fast api中的pymysql pip3 install fastapi pip3 install pydantic pip3 install "uvicorn[standard]" pip3 中的3是 Python 3 版本的包管理器命令,用于安装和管理 Python 3 版本的第三方库。在某些系统中,同时…...
【idea】解决springboot项目中遇到的问题
一、Maven报错Could not find artifact com.mysql:mysql-connector-j:pom:unknown in aliyunmaven解决及分析 报错 创建springboot项目,勾选数据库驱动,springboot版本为3,现在改成了2.7.2,Maven就发生了报错Could not find art…...
ubuntu22.04禁止自动休眠的几种方式
在Ubuntu 20.04中,您可以通过以下几种方式禁用自动休眠功能: 使用systemd设置: sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target 修改/etc/systemd/logind.conf文件: sudo nano /etc/systemd/logind.conf 找…...
智能网站管理系统
智能网站管理系统,即智能化的网站管理工具,是为了提高网站管理效率和简化操作流程而开发的一种软件系统。它集合了各种先进的技术和功能,为网站管理员提供了一套强大而可靠的解决方案。 智能网站管理系统的核心功能是网站内容管理。传统的网站…...
Android Service学习笔记
1、Service介绍 Android Service(服务)是 Android 四大组件之一,主要作用是执行后台操作。它是一个后台运行的组件,执行长时间运行且不需要用户交互的任务。即使应用被销毁也依然可以工作。 Service并不是运行在一个独立的进程当…...
amr文件怎么转换成mp3?超好用的四种转换方法介绍!
amr文件怎么转换成mp3?在当今数字化时代,音频格式的多样性给我们带来了更广泛的选择,其中AMR格式就是其中之一,AMR格式在录音和通话领域得到广泛应用,但与此同时,它也存在一些挑战和局限性,尽管…...
翻转数位00
题目链接 翻转数位 题目描述 注意点 可以将一个数位从0变为1找出能够获得的最长的一串1的长度(必须是连续的) 解答思路 参照题解使用动态规划解决本题,对于任意一个位置i,dp[i][0]表示到达且包含第i位不翻转0最长1的长度&…...
工具:安装R语言的R包的各种方法
欢迎大家关注全网生信学习者系列: WX公zhong号:生信学习者Xiao hong书:生信学习者知hu:生信学习者CDSN:生信学习者2 介绍 R语言提供的大量R包为众多研究者提供了足够的工具,但是如何安装R包是很多人在使…...
注意力机制和Transformer模型各部分功能解释
文章目录 Transformer1、各部分功能解释2、通过例子解释a.输入预处理位置编码b.Encoder 的处理c.Decoder的输入Decoder的工作流程d.输出预测总结 Attention代码和原理理解 Transformer 运行机理: (1)假设我们需要进行文本生成任务。我们将已…...
短路是怎么形成的
1. 短路分为电源短路和用电器短路。 电源短路:电流不经过任何用电器,直接由正极经过导线流向负极,由于电源内阻很小,导致短路电流很大,特别容易烧坏电源。 用电器短路:也叫部分电路短路,即一根…...
【ZZULIOJ】1106: 回文数(函数专题)
题目描述 一个正整数,如果从左向 右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。输入两个整数m和n(m<n),输出区间[m,n]之间的回文数。…...
数据库设计规范总结
数据库设计规范总结 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 数据库设计规范是指在设计数据库时应该遵循的一系列规则和标准,旨在提高数据库…...
深度学习(九)——神经网络:最大池化的作用
一、 torch.nn中Pool layers的介绍 官网链接: https://pytorch.org/docs/stable/nn.html#pooling-layers 1. nn.MaxPool2d介绍 nn.MaxPool2d是在进行图像处理时,Pool layers最常用的函数 官方文档:MaxPool2d — PyTorch 2.0 documentation &…...
「前端+鸿蒙」鸿蒙应用开发-ArkTS语法说明-组件声明
ArkTS 是鸿蒙应用开发中的一个框架,它允许开发者使用 TypeScript 语法来创建声明式的用户界面。在 ArkTS 中,组件声明是构建 UI 的基础。以下是 ArkTS 快速入门的指南,包括组件声明的语法说明和示例代码。 ArkTS 快速入门 - 语法说明 - 组件声明 组件基础 在 ArkTS 中,组…...
python的subprocess 模块
subprocess 模块是 2.4 版本中新增的模块, 它允许您生成新进程,连接到它们的 输入 / 输出 / 错误 管道,并获得它们的返回码 (状态信息), 该模块的目的在于取代几个较旧的模块和功能 subprocess 模块可以用于执行系统命令, 拿到执行的结果, 速度比较的快…...
【Arc gis】使用DEM提取流域范围
地址:arcgis DEM 提取流域范围(详细教程)(空间分析--Hydrology)_gis的gridcode是什么意思-CSDN博客...
大模型技术工程师:抓住时代机遇,成为行业精英_
伴随AI大模型的火热,中国科技大厂们正在掀起一场「跑步AI化」的风暴。从顶层战略到业务线重构,AI无疑已成为大厂们押注未来的新故事。 大模型时代已经到来 大模型已成为全球竞争热点,一个大模型时代已经到来。 大模型具备三个特点…...
孟德尔随机化R包:TwoSampleMR和MR-PRESSO安装
1. 孟德尔随机化R包 看一篇文章,介绍孟德尔随机化分析,里面推荐了这两个R包,安装了解一下: Methods:Genome-wide association study (GWAS) data for autoimmune diseases and AMD were obtained from the IEU Open GWAS databas…...
6月18日 Qtday4
作业day4.1 作业4.2...
Vue3模拟国足18强赛抽签
Vue3国足18强赛抽签 国足遇到这个对阵,能顺利出现吗? 1、系统演示 Vue3模拟国足18强赛抽签 2、关键代码 开始抽签 <script setup> import FenDang from "/components/chouqian/FenDang.vue"; import {ref} from "vue";le…...
CFETR重载机械臂精确运动控制验证【附仿真】
✨ 长期致力于中国聚变工程实验堆、遥操作、多功能重载机械臂、路径规划、精确控制、数据融合控制研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)刚柔…...
初创团队如何利用Token Plan套餐有效控制AI开发成本
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 初创团队如何利用Token Plan套餐有效控制AI开发成本 对于资源有限的初创团队和独立开发者而言,在原型开发和产品验证阶…...
【PCL中Ptr释放问题 aligned_free 的2种解决方法】
PCL中Ptr释放问题 aligned_free解决方法1解决方法2解决方法1 添加avx指令,参考这篇博客https://blog.csdn.net/qq_60609496/article/details/123900817 解决方法2 我按照方法1尝试添加了avx或者sse等,都不行,我是要做一个静态库的时候链接…...
用1.44寸ST7735 TFT屏DIY一个桌面天气站(附STM32/Arduino完整项目代码)
用1.44寸ST7735 TFT屏打造智能桌面天气站(STM32/Arduino全流程实战) 在创客圈里,能够实时显示天气信息的桌面小设备一直备受青睐。本文将带你从零开始,利用常见的1.44寸ST7735 TFT屏幕,构建一个功能完善的智能天气站。…...
浏览器扩展实现AI提示词高效管理:从模板变量到工作流优化
1. 项目概述与核心价值最近在折腾AI工具链,发现一个痛点:每次和ChatGPT、Claude或者本地部署的大模型对话时,那些精心调试好的提示词(Prompt)总是散落在各个聊天窗口里,要么就是得手动复制粘贴,…...
STM32嵌入式开发入门:从硬件配置到项目实战的完整学习路径
1. 项目概述:从零到一,如何构建你的STM32知识体系很多刚接触嵌入式开发的朋友,拿到一块STM32开发板,看着满屏的英文手册和复杂的库函数,第一反应往往是“从哪开始?”。这感觉就像面对一座零件齐全但没图纸的…...
从深夜改格式到一键生成:我的LaTeX参考文献国标化之旅 [特殊字符]
从深夜改格式到一键生成:我的LaTeX参考文献国标化之旅 🎯 【免费下载链接】gbt7714-bibtex-style BibTeX styles for Chinese National Standard GB/T 7714 项目地址: https://gitcode.com/gh_mirrors/gb/gbt7714-bibtex-style 你是否也曾为了论文…...
企业无线准入实战:AC联动RADIUS与内置Portal构建安全访客网络
1. 为什么企业需要安全访客网络? 想象一下这样的场景:你的公司经常有合作伙伴、客户来访,他们需要临时使用Wi-Fi。如果直接开放内部网络,就像把家门钥匙随便发给陌生人;如果用简单密码共享,又像在公共场合大…...
Win11 VMware 报错“未能启动虚拟机”?深入解析 Hyper-V 与注册表冲突的修复指南
1. 为什么Win11下VMware会报错"未能启动虚拟机"? 最近帮朋友调试Win11上的VMware Workstation时,遇到了经典的"未能启动虚拟机"错误。这个报错背后其实是Windows 11的虚拟化安全机制与第三方虚拟化软件的兼容性问题。微软在Windows …...
OpenRGB终极指南:一个软件搞定所有RGB灯光控制,告别厂商软件束缚
OpenRGB终极指南:一个软件搞定所有RGB灯光控制,告别厂商软件束缚 【免费下载链接】OpenRGB Open source RGB lighting control that doesnt depend on manufacturer software. Supports Windows, Linux, MacOS. Mirror of https://gitlab.com/CalcProgra…...
