Pythons使用mysql数据库

前言

首先我们前提主机主机要有mysql数据库,然后要使我们的python连接到数据库,我们需要使用pymysql这个库所以我们需要安装

1.安装Mysql

首先我们先前往官网下载mysql

https://dev.mysql.com/downloads/mysql/

这里我们下载dmg安装包,注意区分自己电脑上arm版还是x86版的
在这里插入图片描述
由于本人是Mac系统接下来将演示mac的安装
当我们的安装包下载好后我们可以打开安装包安装,一直点下一步
在这里插入图片描述
注意⚠️:
在configuration这一项时,我们选择Use Legacy Password Encryption,然后设置我们的mysql的root用户密码

然后安装完后我们在偏好设置中可以看到有mysql选项
在这里插入图片描述
在这里插入图片描述
当我们看到左边有两个绿点就代表安装好了
mac安装完后我们在终端输入mysql,测试是否环境配置好了

$ mysql


如果出现 zsh: command not found: mysql
这说明我们还没有配置环境,在终端通过 vim 来编辑 .zshrc 配置文件

$ sudo vim ~/.zshrc

点击 i 键,进入编辑模式,在配置文件中添加如下路径:

export PATH=$PATH:/usr/local/mysql/bin

然后按 esc 退出编辑模式,输入 :wq 保存退出

接着在终端执行 source ~/.zshrc 使配置生效

$ source ~/.zshrc

windows用户则请找找关于windows安装mysql的教程

安装pymysql库

接下来我们开始用python来对mysql进行操作
首先我们先来安装pymysql库
在我们安装完python后,会自带一个pip工具
我们在终端中输入命令

pip install pymysql

就可以安装了,等待安装完

导入pymysql库

from pymysql import Connection

连接mysql

conn = Connection(
    host = '主机名(ip)',  
    port = 端口(默认3306),
    user = '用户名(默认root)',
    password = '用户密码',
)

# 获取游标对象

cursor = conn.cursor()

选择数据库

conn.select_db('数据库名')

执行sql命令

cursor.execute("这里是sql命令")

注意的是如果是查询,我们需要用fetchall()方法来获取一个嵌套元组,元组中的每个元素都是一个元组,这个元组中存放的是每一行的内容(记录)
如果执行的是插入语句,则我们需要在插入语句的下面添加代表确认插入的语句,通过使用commit()方法
例子:
1、查询

cursor.execute("select * from student")
results: tuple = cursor.fetchall()
for r in results:
    print(r)

2、插入

cursor.execute("insert into student values(1001,'hhh',32)")
conn.commit() #

关闭数据库

要关闭数据库我们使用close()方法

conn.close()

如果我们需要自动确认,则需要在Connection中添加autocommit=True

完整代码

# install pymysql
# 导入pymysql
from pymysql import Connection
# mysql数据库的连接
conn = Connection(
    host = 'localhost', # 主机名(ip)
    port = 3306,        # 端口
    user = 'root',      # 用户名
    password = '123456', #密码
    # autocommit=True # 自动提交
)

# 获取游标对象
cursor = conn.cursor()
# 选择数据库
conn.select_db('test')
# 使用游标对象,执行sql语句
# cursor.execute("create table test_1(id int)")

# 查询
#cursor.execute("select * from student")
#results: tuple = cursor.fetchall()
#for r in results:
#    print(r)

# 数据插入
cursor.execute("insert into student values(1001,'hhh',32)")
# 提交手动确认(事物)
conn.commit()
# 关闭数据库
conn.close()

大家可以根据sql语句来对数据库执行操作,当然在我的博客中也有关于sql语句的操作举例

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一位瑜伽行者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值