python调用MySql详细步骤

一、下载MySql

MySQL :: Download MySQL Installerhttps://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相似,可以通过类比的方式来学习。

python 复制代码
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.1 、将人脸识别考勤系统识别到的数据自动填入到数据库的表单中

python 复制代码
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输入这个命令👇

python 复制代码
cd C:\Program Files\MySQL\MySQL Server 8.0\bin

然后输入这个命令👇

python 复制代码
mysql -h localhost -u root -p

即可成功进入mysql

接着输入👇

python 复制代码
SHOW DATABASES;

然后输入👇

python 复制代码
USE face_recognition_attendance;

紧接着输入👇

bash 复制代码
SHOW TABLES;

倒数第二步骤输入👇

bash 复制代码
DESCRIBE attendance_data;

最最最后输入👇

bash 复制代码
SELECT * FROM attendance_data;

完美大功告成啦!!!!

相关推荐
阿乾之铭15 分钟前
Spring Boot中集成Redis与MySQL
spring boot·redis·mysql
FIN技术铺1 小时前
问:数据库的六种锁机制实践总结?
数据库·sql·oracle
程序员劝退师_2 小时前
优惠券秒杀的背后原理
java·数据库
Gauss松鼠会2 小时前
GaussDB全密态数据库等值查询
数据库·oracle·gaussdb
JSUITDLWXL2 小时前
在Oracle数据中更新整个对象和更新对象的某几个字段时,他们的锁是相同的吗
数据库·oracle
杏花春雨江南2 小时前
ddl/dml/dcl
数据库·oracle
Matrix702 小时前
HBase理论_HBase架构组件介绍
大数据·数据库·hbase
不太灵光的程序员2 小时前
【HBase分布式数据库】第七章 数据的导入导出 importtsv导入数据
数据库·分布式·hbase
Mephisto.java2 小时前
【大数据学习 | HBASE高级】region split机制和策略
数据库·学习·hbase
Lucifer三思而后行2 小时前
YashanDB YAC 入门指南与技术详解
数据库·后端