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()
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦