PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。因为pymysql是第三方模块,使用之前需要预先安装。
一: pymysql进行查询操作
pymysql进行查询操作主要分为三个步骤,分别是:建立连接,提交查询,收集查询结果。
- 建立连接
pymysql建立连接的思路和Navicate建立连接的思路相同,都是需要确定主机名(host),用户名和密码(user和password)甚至端口和数据库
以下是pymysql建立连接的代码部分:
import pymysql
#第1步:与mysql创建连接
conn = pymysql.connect(
host='127.0.0.1',
user='root',
password='123456',
database='qianli',
charset='utf8')
- 执行sql
执行SQL之前需要创建游标,我们可以认为这是操作数据的对象。这里是固定写法,除了SQL语句存在区别。
#创建游标
cursor = conn.cursor()
#第2步:你做的操作
sql = "select * from student;"
cursor.execute(sql) #所做的查询操作
conn.commit() #数据操作的二次确认
- 获取执行结果
通过fetch操作获取执行结果,可以获取一行结果,多行结果也可以获取全部结果,具体代码如下:
cursor.execute(sql)
res1=cursor.fetchone() # 获取一行数据
print(res1)
res2=cursor.fetchmany(2) #获取多行数据
print(res2)
res3=cursor.fetchall() # 获取所有数据
print(res2)
在使用的过程中,建立使用fetchall()获取全部的结果,因为限制输出结果咱们可以通过sql语句的WHERE条件来完成。
- 关闭连接
固定代码
cursor.close() #关闭游标
conn.close() #关闭数据库连接
二: pymysql进行增删改操作
pymysql做增删改操作的思路与查询相同,只是增删改操作没有返回结果,固不需要做fetchall操作。但因为增删改操作会对数据进行更改,所以需要使用commit进行二次确认。
import pymysql
#第1步:与mysql创建连接
conn = pymysql.connect(
host='127.0.0.1',
user='root',
password='123456',
database='qianli',
charset='utf8')
cursor = conn.cursor()
#第2步:你做的操作
sql = "delete from student where id=100"
cursor.execute(sql) #所做的查询操作
conn.commit() #数据操作的二次确认
#关闭连接
cursor.close()
conn.close()