千家信息网

Python操作MySQL的pymsql模块是怎么使用的

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,Python操作MySQL的pymsql模块是怎么使用的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。pymsql是Python中操作M
千家信息网最后更新 2025年01月23日Python操作MySQL的pymsql模块是怎么使用的

Python操作MySQL的pymsql模块是怎么使用的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同,但是mysqldb不支持Python3

下载安装

pip3 install pymysql

使用操作

1. 执行sql
#!/usr/bin/env python# -*- coding:utf-8 -*-import pymysql# 创建连接conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123456', db='test',charset='utf8')# 创建游标cursor = conn.cursor()# 执行SQL,并返回收影响行数effect_row = cursor.execute("update hosts set host = '1.1.1.2'")# 执行带条件SQL,并返回受影响行数#effect_row = cursor.execute("update hosts set host = '1.1.1.2' where nid > %s", (1,))# 执行SQL,并返回受影响行数#effect_row = cursor.executemany("insert into hosts(host,color_id)values(%s,%s)", [("1.1.1.11",1),("1.1.1.11",2)])# 提交,不然无法保存新建或者修改的数据conn.commit() # 获取最新自增IDnew_id = cursor.lastrowid# 关闭游标cursor.close()# 关闭连接conn.close()
2.获取查询数据
#!/usr/bin/env python# -*- coding:utf-8 -*-import pymysqlconn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123', db='t1')cursor = conn.cursor()cursor.execute("select * from hosts")# 获取第一行数据row_1 = cursor.fetchone()print(row_1)# 获取前n行数据# row_2 = cursor.fetchmany(3)# 获取所有数据row_3 = cursor.fetchall()cursor.close()conn.close()
3.fetch数据类型

关于默认获取的数据是元祖类型,如果想要或者字典类型的数据,使用设置游标为字典类型:

#!/usr/bin/env python# -*- coding:utf-8 -*-import pymysqlconn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123', db='t1')# 游标设置为字典类型cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)r = cursor.execute("select * from hosts")result = cursor.fetchone()for k, v in result.items():    print(k,v)cursor.close()conn.close()

看完上述内容,你们掌握Python操作MySQL的pymsql模块是怎么使用的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0