作者介绍:Python领域优质创作者、华为云享专家、阿里云专家博主、2021年CSDN博客新星Top6
- 本文已收录于Python全栈系列专栏:《100天精通Python从入门到就业》
- 此专栏文章是专门针对Python零基础小白所准备的一套完整教学,从0到100的不断进阶深入的学习,各知识点环环相扣
- 订阅专栏后续可以阅读Python从入门到就业100篇文章;还可私聊进两百人Python全栈交流群(手把手教学,问题解答); 进群可领取80GPython全栈教程视频 + 300本计算机书籍:基础、Web、爬虫、数据分析、可视化、机器学习、深度学习、人工智能、算法、面试题等。
- 加入我一起学习进步,一个人可以走的很快,一群人才能走的更远!
pymysql模块模块说明:是一个Python编写的MySQL驱动程序,让我们可以用Python语言操作MySQL数据库。
2. 安装pymysql
,输入对应的pip命令:pip install pymysql
,我已经安装过了出现版本就安装成功了
3. 安装pymssql
,输入对应的pip命令:pip install pymssql
,我已经安装过了出现版本就安装成功了
import pymysql
调用pymysqI模块中的connect()
函数来创建连接对象,代码如下:
conn = pymysql.connect(参数列表)
参数说明:
host
:连接的mysql主机,如果本机是’localhost’port
:连接的mysql主机的端口,默认是3306database
:数据库的名称user
:连接的用户名password
:连接的密码charset
:通信采用的编码方式,推荐使用utf8连接对象操作说明:
conn.close()
:关闭连接conn.commit()
:提交数据conn.rollback()
:撤销数据获取游标对象的目标就是要执行sql语句,完成对数据库的增、删、改、查操作的代码如下:
cur = conn.cursor()
游标操作说明:
execute(operation [parameters])
:使用游标执行SQL语句,返回受影响的行数,主要用于执行insert、update、delete、select等语句,也可以执行create、alter、drop等语句
cur.fetchone()
:获取查询结果集中的一条数据,返回一个元组,如(1,张三)
curfetchall()
:获取查询结果集中的所有数据,返回一个元组,如((1,张三),(2,'李四"))
cur.close()
:关闭游标,表示和数据库操作完成
使用
cur.fetchone()
:获取查询结果集中的一条数据,返回一个元组,如(1,张三)
# 1. 导入pymysql模块
import pymysql
# 2. 创建连接对象
# host:连接的mysql主机,如果本机是’localhost’
# port:连接的mysql主机的端口,默认是3306
# database:数据库的名称
# user:连接的用户名
# password:连接的密码
# charset:通信采用的编码方式,推荐使用utf8
conn = pymysql.connect(host="localhost",
port=3306,
user="root",
password="mysql",
database="python41",
charset="utf8"
)
# 3.获取游标,目的就是要执行sql语句
cursor = conn.cursor()
# 准备sql,之前在mysql客户端如何编 写sql,在python程序里面还怎么编写
sql = "select * from students;"
# 4. 执行sql语句
cursor.execute(sql)
# 获取查询结果,返回的数据类型是一个元组:(1,张三)
row = cursor.fetchone()
print(row)
# 5.关闭游标
cursor.close()
# 6.关闭连接
conn.close()
使用
curfetchall()
:获取查询结果集中的所有数据,返回一个元组,如((1,张三),(2,'李四"))
# 1. 导入pymysql模块
import pymysql
# 2. 创建连接对象
# host:连接的mysql主机,如果本机是’localhost’
# port:连接的mysql主机的端口,默认是3306
# database:数据库的名称
# user:连接的用户名
# password:连接的密码
# charset:通信采用的编码方式,推荐使用utf8
conn = pymysql.connect(host="localhost",
port=3306,
user="root",
password="mysql",
database="python41",
charset="utf8"
)
# 3.获取游标,目的就是要执行sql语句
cursor = conn.cursor()
# 准备sql,之前在mysql客户端如何编 写sql,在python程序里面还怎么编写
sql = "select * from students;"
# 4. 执行sql语句
cursor.execute(sql)
# 获取查询结果,返回的数据类型是一个元组:((1,'张三'),(2,'李四"))
rows = cursor.fetchall()
for row in rows:
print(row)
# (1, '张三')
# (2, '李四")
# 5.关闭游标
cursor.close()
# 6.关闭连接
conn.close()
使用
conn.commit()
:提交数据;conn.rollback()
:撤销数据对数据库进行增删改操作
# 1. 导入pymysql模块
import pymysql
# 2. 创建连接对象
# host:连接的mysql主机,如果本机是’localhost’
# port:连接的mysql主机的端口,默认是3306
# database:数据库的名称
# user:连接的用户名
# password:连接的密码
# charset:通信采用的编码方式,推荐使用utf8
conn = pymysql.connect(host="localhost",
port=3306,
user="root",
password="mysql",
database="python41",
charset="utf8"
)
# 3.获取游标,目的就是要执行sql语句
cursor = conn.cursor()
# 增加操作
sql = "insert into classes(name) values('小明)"
# 修改操作
# sql = "update classes set name = '小红' where id = 2"
# 删除操作
# sql = "delete from classes where id=2"
try:
# 4. 执行sql语句
cursor.execute(sql)
# 增删改都必须提交数据
conn.commit()
except:
# 如果报错就对修改的数据进行撤销,表示数据回滚
conn.rollback()
# 5.关闭游标
cursor.close()
# 6.关闭连接
conn.close()
pymssql
模块 与 pymyql
模块的区别在于:
import pymssql
conn = pymssql.connect(参数列表)
其他语法与pymyql一模一样就不过多讲解了!!!