,本文中,使用到的工具有:Pycharm,Anaconda,MySQL 5.5,spyder(Anaconda)

什么是 PyMySQL?

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2 中则使用 mysqldb。

一、环境准备

1、安装pymysql:

进行Python连接mysql数据库之前,需要先安装一下pymysql。

直接在终端执行下面的命令即可。(在此处我将指定1.0.2版本)

pip install pymysql==1.0.2

2、查询安装:

下载完成后,在终端输入 pip list 即可看到下图:

pip list

可以看到我们的PyMySQL是1.0.2版本的。

3、Anaconda下载pymysql:

打开Anaconda,选择 Environments 点击右上方的的搜索框 输入 pymysql

点击方框,即可下载

方式一:

此处我们可以选择 spyder 或者 pycharm 首先为大家介绍一下 spyder 我们只需要直接导入 pymysql 库即可

方式二:

4、Pycharm下载pymysql

打开 Pycharm 选择文件,点击设置,

下划,选择python解释器,这里我的Pycharm已经配置了Anaconda环境

如果没有查询到 pymysql 可以在 Pycharm 终端中下载 pymysql 库

以上我们的环境就准备好了,下面我们进行编写程序 ☀

二、代码编写,连接数据库

1、导入数据库表

import pymysql

数据库连接:

连接数据库前,请先确认以下事项:

  • 连接数据库使用的用户名为 “root” ,密码为 “dai324542”,创建了数据库 runoob
  • 你可以可以自己设定或者直接使用root用户名及其密码

db = pymysql.connect(host='localhost', user='root', password='dai324542', database='runoob', charset='utf8') # 使用 cursor() 方法创建一个游标对象 cursorcursor = db.cursor() # 使用 execute()方法执行 SQL 查询 cursor.execute("SELECT VERSION()") # 使用 fetchone() 方法获取单条数据.data = cursor.fetchone() print ("数据库连接成功!") # 关闭数据库连接db.close()

2、创建数据库表

# 创建表sql="""CREATE TABLE test (FIRST_CHAR(20) NOT NULL,SECOND_CHAR(20),THIRD_ INT,FOURTH_ CHAR(1),FIFTH_ FLOAT )"""# 运行sql语句cursor.execute(sql)

这里我们所运用的sql语句是不是很熟悉了

下面即是运行结果了,再mysql中可以刷新看到,我输出了一个提示 victory

3、数据库插入操作

此处我只是随便进行了一个举例,通过更改创建表时的操作可以插入不同类型的数据

try:sql = "insert into test(FIRST_,SECOND_,THIRD_,FOURTH_,FIFTH_) values ('MAC','MOTH','20','M','2000')"# 运行sql语句cursor.execute(sql)# 修改db.commit()# 关闭游标cursor.close()# 关闭连接db.close()print("victory!")except:print("false")

4、查询其中一个表的数据

# 查询语句try:cursor = db.cursor()sql = "select * from student"cursor.execute(sql)result = cursor.fetchall()for data in result:print(data)except Exception:print("查询失败")

5、删除表中的一条数据

# SQL 删除语句sql = "DELETE FROM student WHERE Sno='20111107'"try: # 执行SQL语句 cursor.execute(sql) # 向数据库提交 db.commit()except: # 发生错误时回滚 db.rollback()# 关闭连接db.close()# 成功提示print("victory!")

注意:Python中的MySQL默认事务打开,需要我们手动提交事务,否则操作无效

写到这里,这篇博客就又又又结束了,很感谢大家的观看,如果对大家有所帮助希望可以留下一个小小的,‍。因才学疏浅,如果各位大佬发现其中存在错误,敬请指出,(ง •_•)ง!