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

 更新时间:2024年12月12日 09:59:08   作者:大气层煮月亮  
MySQL是当今市场上最受欢迎的数据库系统之一,由于大多数应用程序需要以某种形式与数据交互,因此像Python这样的编程语言提供了用于存储和访问这些数据的工具,这篇文章主要给大家介绍了关于python调用MySql的相关资料,需要的朋友可以参考下

一、下载MySql


MySQL :: Download MySQL Installer:https://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://www.jb51.net/database/330909cz6.htm

四、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 pymysql

class FaceRecognitionData:
    def __init__(self):
        pass

    def 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

成功!!!

总结 

到此这篇关于python调用MySql保姆级教程的文章就介绍到这了,更多相关python调用MySql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • linux 下selenium chrome使用详解

    linux 下selenium chrome使用详解

    这篇文章主要介绍了linux 下selenium chrome使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 学习python可以干什么

    学习python可以干什么

    在本文里我们给大家分享了关于学习python的前途以及告诉大家可以做什么,正在学习PYTHON的朋友们学习下。
    2019-02-02
  • Python读取图像并显示灰度图的实现

    Python读取图像并显示灰度图的实现

    这篇文章主要介绍了Python读取图像并显示灰度图的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • python的turtle库使用详解

    python的turtle库使用详解

    在本篇文章里小编给大家分享了关于python的turtle库相关知识点以及使用方法,需要的朋友们跟着学习下。
    2019-05-05
  • Python中Yield的基本用法及Yield与return的区别解析

    Python中Yield的基本用法及Yield与return的区别解析

    Python中有一个非常有用的语法叫做生成器,用到的关键字就是yield,这篇文章主要介绍了Python中Yield的基本用法及Yield与return的区别,需要的朋友可以参考下
    2022-10-10
  • 解决import tensorflow导致jupyter内核死亡的问题

    解决import tensorflow导致jupyter内核死亡的问题

    这篇文章主要介绍了解决import tensorflow导致jupyter内核死亡的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • NumPy中数组的转置Transpose的三种方法

    NumPy中数组的转置Transpose的三种方法

    本文主要介绍了NumPy中数组转置的基本概念、方法、应用场景及注意事项,针对二维与高维数组,提供了多种转置方法,包括T、transpose、np.transpose,下面就来详细的了解一下
    2026-04-04
  • Python实现多格式文本转为word

    Python实现多格式文本转为word

    在现代工作中,我们常常需要处理不同格式的文件,其中Word文档是最为常见的一种,本文主要介绍了如何使用Python创建一个全能的文件处理工具,能够将多种格式的文件转换为Word文档,需要的可以参考下
    2023-11-11
  • Python批量修改文件名案例汇总

    Python批量修改文件名案例汇总

    在文件管理和数据处理中,批量修改文件名是一项常见且重要的任务,Python作为一种功能强大的编程语言,提供了丰富的库和工具来简化这一过程,本文将结合实际案例,详细介绍如何通过Python批量修改文件名,需要的朋友可以参考下
    2024-08-08
  • Python构造函数属性示例魔法解析

    Python构造函数属性示例魔法解析

    Python构造函数和属性魔法是面向对象编程中的关键概念,它们允许在类定义中执行特定操作,以控制对象的初始化和属性访问,本文将深入学习Python中的构造函数和属性魔法,包括构造函数__init__、属性的@property和@attribute.setter等,以及它们的实际应用
    2023-12-12

最新评论