Python 中使用 PyMySQL模块操作数据库的方法
之前用的Python2,连接MySQL用的是MySQLdb。现在换成python3.x了,由于MySQLdb模块还不支持Python3.x,所以Python3.x如果想连接MySQL需要安装PyMySQL模块,以下将介绍PyMySQL的安装及常用操作。
一、安装
pipinstallPyMySQL
二、常用操作
查询数据
importpymysql #连接数据库 conn=pymysql.connect( host='127.0.0.1', user='root', passwd='root', port=3306, db='test', charset='utf8' ) #创建一个游标 cursor=conn.cursor() #查询数据 sql="select*fromuser" cursor.execute(sql)#执行sql #查询所有数据,返回结果默认以元组形式,所以可以进行迭代处理 foriincursor.fetchall(): print(i) print('共查询到:',cursor.rowcount,'条数据。') #获取第一行数据 result_1=cursor.fetchone() print(result_1) #获取前n行数据 result_3=cursor.fetchmany(3) print(result_3) cursor.close()#关闭游标 conn.close()#关闭连接
插入数据
执行完插入语句后一定要执行.commit()进行提交事务,可以插入多条后统一提交,否则操作无效
importpymysql #连接数据库 conn=pymysql.connect( host='127.0.0.1', user='root', passwd='root', port=3306, db='test', charset='utf8' ) #创建一个游标 cursor=conn.cursor() #插入数据 #数据直接写在sql后面 sql="insertintousername(id,name)values(%s,%s)"#注意是%s,不是s% cursor.execute(sql,[3,'王五'])#列表格式数据 cursor.execute(sql,(4,'马六'))#元组格式数据 #数据单独赋给一个对象 sql="insertintousernamevalues(%s,%s)" data=(5,'老七') cursor.execute(sql,data)#sql和data之间以","隔开 sql="insertintousernamevalues(%s,'%s')" data=(6,'小八') cursor.execute(sql%data)#sql和data之间以"%"隔开,此时它的sql中注意要给中文字符对应的占位符加上引号,即"%s",不然会报错:unsupportedformatcharacter conn.commit()#提交,不然无法保存插入或者修改的数据(这个一定不要忘记加上) cursor.close()#关闭游标 conn.close()#关闭连接
修改数据
执行完修改语句后一定要执行.commit()进行提交事务,可以修改多条后统一提交,否则操作无效
importpymysql #连接数据库 conn=pymysql.connect( host='127.0.0.1', user='root', passwd='root', port=3306, db='test', charset='utf8' ) #创建一个游标 cursor=conn.cursor() #修改数据 sql="updateusernamesetname='%s'whereid=%s"#注意%s什么时候加引号,什么时候不加 data=('改名了',1) cursor.execute(sql%data) sql="updateusernamesetname=%swhereid=%s" data=('也改名了',2) cursor.execute(sql,data) conn.commit()#提交,不然无法保存插入或者修改的数据 cursor.close()#关闭游标 conn.close()#关闭连接
删除数据
执行完删除语句后一定要执行.commit()进行提交事务,可以删除多条后统一提交,否则操作无效
importpymysql #连接数据库 conn=pymysql.connect( host='127.0.0.1', user='root', passwd='root', port=3306, db='test', charset='utf8' ) #创建一个游标 cursor=conn.cursor() #删除数据 sql="deletefromusernamewhereid=%s" data=(2) cursor.execute(sql,data) conn.commit()#提交,不然删除操作不生效 cursor.close()#关闭游标 conn.close()#关闭连接
总结
以上所述是小编给大家介绍的Python中使用PyMySQL操作数据库的方法,希望对大家有所帮助!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。