python调用MySql保姆级教程(包会的)

目录

一、下载MySql

 二、安装MySql

三、验证MySql是否OK

1、MySQL控制台验证

2、命令提示符cmd窗口验证

四、Python调用MySql

4.1 安装pysql

 4.2 使用pysql

4.2.1、连接数据库服务器并且创建数据库和表

4.2.2 、将人脸识别考勤系统识别到的数据自动填入到数据库的表单中

五 由于设置原因,mysql服务自动停止(ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061))


一、下载MySql


MySQL :: Download MySQL Installericon-default.png?t=O83Ahttps://dev.mysql.com/downloads/windows/installer/8.0.html点击上面链接,进入MySQL8.0的下载页面,选择离线安装包下载。

 不需要登陆,直接点击下方的 No thanks,just start my download. 即可下载

 二、安装MySql

                下载完成后,开始安装MySQL。双击安装文件,

        在所示界面选中I accept the license terms 复选框,这里选择纯净的Server only类型,然后一直点击NEXT,进入选择设置类型界面,这里有五种类型,MySQL会默认选择Developer Default类型,

👇

👇

序号1、2、3、4解释:

1. 这里选择TCP/IP,也就是通过网络连接MySQL,MySQL启动时是一个网络服务。
  TCP/IP协议栈是互联网通信的基础,它定义了数据如何在网络中传输和交换。它支持各种类型的应用层协议,例如HTTP、FTP、SMTP等,这些协议构成了互联网上各种应用的基础。

2. Windows的防火墙就那样,所以勾不勾选看宝宝们心意
3 \ 4. 本机连MySQL,可以用命名管道或者共享内存都可以
  Named Pipe通常用于处理大量数据的通信,而Shared Memory则用于需要高速数据传输的进程间通信。Named Pipe通过读写文件来进行通信,而Shared Memory直接共享内存。因此,在使用Named Pipe时需要考虑文件I/O的开销,而在使用共享内存时需要考虑数据同步的问题。

 👇

 

MySQL的超级管理员叫 root,初次设置密码,建议先使用弱口令就好,当然如果记性好的也可以设置强口令(苹果系统就需要设置强口令:包含大小写、数字、特殊字符,且长度大于8位)

👇 

 👇

👇 

 

 👇

👇

👇

👇

👇

 安装完毕!!!

三、验证MySql是否OK

1、MySQL控制台验证

开始菜单 > 打开 MySQL 8.0 Command Line Client 程序

输入设置的密码,弹出当前 MySQL 的服务器状态 

2、命令提示符cmd窗口验证

(1)在电脑中找到安装好的MySQL的bin文件夹 并拿到地址,一般默认安装路劲是:C:\Program Files\MySQL\MySQL Server 8.0\bin,找到这个路劲才能在cmd窗口下输入正确的地址。

(2)Win + R,输入cmd,在窗口中输入cd C:\Program Files\MySQL\MySQL Server 8.0\bin,然后输入mysql -h localhost -u root -p 登录数据库,再输入数据库密码,登录成功即可查看信息。

 到这里,MySQL就安装成功啦!!!在许多软件安装过程中,宝宝们可能会看到一个名为"bin"的文件夹,那么这个bin文件夹有什么作用呢?在本期 MySQL安装教程中用到了 cmd 的验证方式,并且在Python免费安装教程 中,也用到了 cmd 去验证 Python 是否安装成功!下一篇将在边边角角小知识专栏 中分享bin文件夹的作用以及 cmd 的一些小知识。

安装步骤参考原文链接:https://blog.csdn.net/m0_71422677/article/details/136007088

四、Python调用MySql

4.1 安装pysql

pip install PyMySQL

 4.2 使用pysql

4.2.1、连接数据库服务器并且创建数据库和表

由于PyMySQL遵循Python Database API 2.0 规范,因此操作MySQL数据库的方式与SQLite相似,可以通过类比的方式来学习。

import pymysql# 连接数据库
connection = pymysql.connect(host='localhost',   # 本地user='root',        # 账号password='root',    # 密码   charset='utf8mb4')  # 创建游标对象
cursor = connection.cursor()'''
### 创建数据库 
(这里假设创建一个名为face_recognition_attendance的用于人脸识别考勤)
'''
cursor.execute("CREATE DATABASE IF NOT EXISTS face_recognition_attendance")'''
=== 切换到新创建的数据库
(一样的,创建一个表命名为face_recognition_attendance用于记录人脸识别考勤)
'''
cursor.execute("USE face_recognition_attendance")# 创建表格(表格的结构,我这里自己弄的是【ID,职位,姓名,状态,考勤时间】)
create_table_query = """
CREATE TABLE IF NOT EXISTS attendance_data (ID INT AUTO_INCREMENT PRIMARY KEY,position VARCHAR(255),name VARCHAR(255),status VARCHAR(50),attendance_time DATETIME
)
"""
# 执行命令的意思
cursor.execute(create_table_query)# 提交更改并关闭连接
connection.commit()
connection.close()print("人脸识别考勤系统数据库和表格创建成功!")

4.2.2 、将人脸识别考勤系统识别到的数据自动填入到数据库的表单中

import pymysqlclass FaceRecognitionData:def __init__(self):passdef create_database(self):connection = pymysql.connect(host='localhost',user='root',password='root',charset='utf8mb4')cursor = connection.cursor()# 创建数据库如果不存在cursor.execute("CREATE DATABASE IF NOT EXISTS face_recognition_attendance")cursor.execute("USE face_recognition_attendance")# 创建表格如果不存在create_table_query = """CREATE TABLE IF NOT EXISTS attendance_data (ID INT AUTO_INCREMENT PRIMARY KEY,position VARCHAR(255),name VARCHAR(255),status VARCHAR(50),attendance_time DATETIME)"""cursor.execute(create_table_query)connection.close()print("人脸考勤系统数据库创建成功!")def insert_data_to_db(self, data):connection = pymysql.connect(host='localhost',user='root',password='root',database='face_recognition_attendance',charset='utf8mb4')cursor = connection.cursor()insert_query = "INSERT INTO attendance_data (ID, position, name, status, attendance_time) VALUES (%s, %s, %s, %s, %s)"for entry in data:cursor.execute(insert_query, entry)connection.commit()connection.close()print("数据插入成功!")# 假设get_fanceRes()函数已经定义并返回数据
def get_fanceRes():# 假设这里是您的get_fanceRes()函数的实现data = [[1, 'Manager', 'Alice', 'Present', '2022-01-01 08:00:00'],[2, 'Engineer', 'Bob', 'Absent', '2022-01-01 09:00:00'],# 其他数据条目]return data# 创建数据库
face_recognition_data = FaceRecognitionData()
face_recognition_data.create_database()# 获取数据并插入数据库
face_data = get_fanceRes()
face_recognition_data.insert_data_to_db(face_data)

打开数据库看看是否成功创建数据库,并且读入数据->

首先打开cmd输入这个命令👇 

cd C:\Program Files\MySQL\MySQL Server 8.0\bin

然后输入这个命令👇

mysql -h localhost -u root -p

即可成功进入mysql 

 接着输入👇

直接复制粘贴的命令行:

SHOW DATABASES;
USE face_recognition_attendance;
SHOW TABLES;
DESCRIBE attendance_data;
SELECT * FROM attendance_data;

下面这些都是一行行的解释运行(仅在4.2.2内解释 ),帮助理解。 

SHOW DATABASES;

然后输入👇

USE face_recognition_attendance;

紧接着输入👇

SHOW TABLES;

 

倒数第二步骤输入👇

DESCRIBE attendance_data;

 

 最最最后输入👇

SELECT * FROM attendance_data;

完美大功告成啦!!!! 

五 由于设置原因,mysql服务自动停止(ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061))

 Win + R 输入

compmgmt.msc

成功!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/474495.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【鸿蒙生态崛起,开发者有哪些机遇与挑战?】HarmonyOS NEXT 引领数字化未来

文章目录 前言一、HarmonyOS NEXT 特点与升级二、全面突破操作系统核心技术三、鸿蒙生态全面守护用户隐私四、鸿蒙生态的崛起与开发者机遇五、全新鸿蒙生态引领数字化未来小结 前言 鸿蒙系统不断发展,有与安卓、iOS 形成三足鼎立之势,且其在智能手机、智…

ssh无法连接Ubuntu

试了多次ssh都无法连接,明明可以上网 网卡、防火墙、端口都没有问题,就是连接不上 结果是这个版本Ubuntu镜像默认没有安装ssh服务 安装SSH服务:apt-get install openssh-server 开启SSH服务:/etc/init.d/ssh start 就可以连接…

基于Java Springboot外卖平台系统

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数…

vue2动态导出多级表头表格

需求:导出多级表格,如下,每个人名对应的是不同的城市金钱和年龄,日期占俩行,需要根据数据进行动态展示 1.效果 2.关键代码讲解 2.1数据源 2.2所需插件 npm install xlsx 2.3关键代码 创建name组和date组&#xff0c…

散户持股增厚工具:智能T0算法交易

最近市场很多都说牛市,但是大多数朋友怎么来的又怎么吐出去了。这会儿我们用T0的智能算法交易又可以增厚我们的持仓收益。简单来说,就是基于用户原有的股票持仓,针对同一标的,配合智能T0算法,每天全自动操作&#xff0…

独立开发:一人公司模式下副业产品的全流程

在数字经济的浪潮下,越来越多的开发者选择成为自由职业者或创立一人公司,通过副业产品开发实现个人价值与经济收益的双重提升。本文将围绕一人公司模式下副业产品的设计、开发、运营及变现落地全流程,提供一套实战指南,帮助有志于…

SD模型微调之Textual Inversion和Embedding fine-tuning

​ 🌺系列文章推荐🌺 扩散模型系列文章正在持续的更新,更新节奏如下,先更新SD模型讲解,再更新相关的微调方法文章,敬请期待!!!(本文及其之前的文章均已更新&a…

【Vue笔记】基于vue3 + element-plus + el-dialog封装一个自定义的dialog弹出窗口组件

这篇文章,介绍一下如何使用vue3+element-plus中的el-dialog组件,自己封装一个通用的弹出窗口组件。运行效果如下所示: 目录 1.1、父子组件通信 1.2、自定义VDialog组件(【v-model】模式) 1.2.1、编写VDialog组件代码 1.2.2、使用VDialog组件 1.2.3、运行效果 1.3、自…

Spring Cloud Alibaba [Gateway]网关。

1 简介 网关作为流量的入口,常用功能包括路由转发、权限校验、限流控制等。而springcloudgateway 作为SpringCloud 官方推出的第二代网关框架,取代了Zuul网关。 1.1 SpringCloudGateway特点: (1)基于Spring5,支持响应…

不完全微分PID控制算法

不完全微分PID控制算法是一种改进的PID控制方法,主要针对PID控制中的微分环节对高频噪声敏感的问题。通过对微分项进行优化和改造,减少其对噪声的放大作用,同时保留对系统动态变化的响应能力。 不完全微分PID控制原理 不完全微分的核心思想是…

DataOps for LLM 的数据工程技术架构实践

导读 在 LLM 蓬勃发展的今天,数据工程已成为支持大规模 AI 模型训练的基石。DataOps 作为数据工程的重要方法论,通过优化数据集成、转换和自动化运维,加速数据到模型的闭环流程。本文聚焦新一代数据 & AI 集成工具- Apache SeaTunnel 在…

go-zero(七) RPC服务和ETCD

go-zero 实现 RPC 服务 在实际的开发中,我们是通过RPC来传递数据的,下面我将通过一个简单的示例,说明如何使用go-zero框架和 Protocol Buffers 定义 RPC 服务。 一、生成 RPC项目 在这个教程中,我们根据user.api文件&#xff0…

【c++丨STL】list模拟实现(附源码)

🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:C、STL 目录 前言 一、节点、迭代器以及函数声明 二、list功能实现 1. 节点 2. 迭代器 迭代器的默认构造 operator* operator-> 前置和-- 后置和--…

SpringBoot:不支持发行版本17超详细解决办法

一开始linux中就已经下好了JDK21,但是后来创建项目的时候选用了JDK23,导致环境错乱,估计大部分都是因为这个原因,接下来我会一步步带大家解决。 检查系统环境(以Ubuntu为例) 没有下载JDK的可以在官网下载…

计算机网络中的数据包传输机制详解

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 计算机网络中的数据包传输机制详解 计算机网络中的数据包传输机制详解 计算机网络中的数据包传输机制详解 引言 数据包的基本概念…

Springboot3.3.5 启动流程之 tomcat启动流程介绍

在文章 Springboot3.3.5 启动流程(源码分析) 中讲到 应用上下文(applicationContext)刷新(refresh)时使用模板方法 onRefresh 创建了 Web Server. 本文将详细介绍 ServletWebServer — Embedded tomcat 的启动流程。 首先&…

HarmonyOs鸿蒙开发实战(9)=>解析json数据,自动生成实体Bean插件-jsonFormat使用教程(铁粉福利)

1.条件:基于HarmonyOs5.0.0版本. 2.老规矩先看效果> 3.第一步 >下载jsonFormat.jar文件,使用版本1.0.5-deveco https://plugins.jetbrains.com/plugin/24930-jsonformat/versions/stable 4.第二步 > 在DevEco Stuio中安装插件 5.第三步 > 新建bean文件&#xff…

VSCode+ESP-IDF开发ESP32-S3-DevKitC-1(2)第一个工程 LED心跳灯

VSCodeESP-IDF开发ESP32-S3-DevKitC-1(2)第一个工程 LED心跳灯 前言1.新建工程2.编写控制LED代码3.LED控制独立成.c和.h文件 前言 实际开发中很多时候我们需要有一个类似心跳灯或运行指示灯的灯以不同的状态闪烁以表示程序的运行状态,所以第…

系统掌握大语言模型提示词 - 从理论到实践

以下是我目前的一些主要个人标签: 6 年多头部大厂软件开发经验;1 年多 AI 业务应用经验,拥有丰富的业务提示词调优经验和模型微调经验。信仰 AGI,已经将 AI 通过自定义 Chatbot /搭建 Agent 融合到我的工作流中。头部大厂技术大学…

FromData格式提交接口时入参被转成JSON格式问题

本地上传文件后通过事件提交文件,一般先通过前端组件生成文本流,在通过接口提交文本流,提交文本流一般使用FormData的入参形式传入,接口请求头也默认"Content-Type": “multipart/form-data”,但是某些场景统…