python怎么操作mysql(详解Python的数据库操作pymysql)
类别:脚本大全 浏览量:2515
时间:2021-10-22 07:31:50 python怎么操作mysql
详解Python的数据库操作pymysql使用原生sql语句进行对数据库操作,可完成数据库表的建立和删除,及数据表内容的增删改查操作等。其可操作性很强,如可以直接使用“show databases”、“show tables”等语句进行表格之外的部分操作。
centos7远程操作数据库时需要关闭防火墙,否则会连接不上
安装:
pip3 install pymysql
数据查询:
|
import pymysql #建立数据库连接 conn = pymysql.connect(host = "192.168.1.175" ,port = 3306 ,user = "root2" ,passwd = "proot2" ,db = "dongdb" ) #得到数据库操作游标 cur = conn.cursor() #查询数据 resdata = cur.execute( "select * from tb_dong" ) print ( "总条数为:" ,resdata) #一行一行输出数据,以元组形式 print ( "取出第一条数据:" ,cur.fetchone()) print ( "取出第二条数据:" ,cur.fetchone()[ 3 ]) #输出剩下的所有数据,以元组嵌套形式 print ( "取出剩下的数据:" ,cur.fetchall()) print ( "------ 完成操作 -------" ) #关闭连接 conn.close() |
数据插入:
也可以使用 execute() 进行操作
|
import pymysql #建立数据库连接 conn = pymysql.connect(host = "192.168.1.175" ,port = 3306 ,user = "root2" ,passwd = "proot2" ,db = "dongdb" ) #得到数据库操作游标 cur = conn.cursor() #插入数据 datax = [ ( "dxd1" , "m" , "东小东1" ), ( "dxd2" , "f" , "东小东2" ) ] #返回影响行数 rescoun = cur.executemany( "insert into tb_dong(namex,sex,otherxxx) values(%s,%s,%s)" ,datax) print (rescoun) #进行数据修改,必须提交事物 conn.commit() print ( "------ 完成操作 -------" ) #关闭数据库连接 conn.close() |
数据修改:
|
#返回影响行数,如果值未进行任何修改则返回0 rescoun = cur.execute( "update tb_dong set namex='%s',sex='%s' where id>%d" % ( "dongdong" , "f" , 16 )) print (rescoun) #进行数据修改,必须提交事物 conn.commit() |
数据删除:
|
#返回影响行数 rescoun = cur.execute( "delete from tb_dong where id>%d" % ( 16 )) conn.commit() #提交事物 |
部分封装:
|
import pymysql #建立数据库连接 conn = pymysql.connect(host = "192.168.1.175" ,port = 3306 ,user = "root2" ,passwd = "proot2" ,db = "dongdb" ) #得到数据库操作游标 cur = conn.cursor() #删除 def dongdel(tablex,idx): try : rescoun = cur.execute( "delete from %s where id=%d" % (tablex,idx)) conn.commit() #提交事物 return rescoun except exception as e: print ( "删除出现错误" , e) return e #插入 def donginsert(tablex,listx): try : rescoun = cur.executemany( "insert into " + tablex + "(namex,sex,otherxxx) values(%s,%s,%s)" ,listx) conn.commit() return rescoun except exception as e: print ( "插入出现错误" ,e) return e #查询,参数为表名和id值 def dongselect(tablex,idx = 0 ): try : if idx = = 0 : resdata = cur.execute( "select * from %s" % tablex) else : resdata = cur.execute( "select * from %s where id=%d" % (tablex,idx)) return resdata except exception as e: print ( "查询出现错误" ,e) return e #修改 def dongupdate(tablex,idx,namex): try : rescoun = cur.execute( "update %s set namex='%s' where id=%d" % (tablex,namex,idx)) conn.commit() return rescoun except exception as e: print ( "更新出现错误" , e) return e #删除数据 resdel = dongdel( "tb_dong" , 6 ) print ( "删除的条数为:" ,resdel) #插入数据 datax = [ ( "dongxiaodong" , "m" , "东小东1" ) ] resinsert = donginsert( "tb_dong" ,datax) print ( "插入的条数为:" ,resinsert) #修改数据 resupdate = dongupdate( "tb_dong" , 7 , "dongxiaodong7" ) print ( "修改的条数为:" ,resupdate) #查询数据 resselect = dongselect( "tb_dong" , 0 ) print ( "查询的总条数为:" ,resselect) print ( "全部数据为:" ,cur.fetchall()) #关闭数据库连接 conn.close() |
总结
以上所述是小编给大家介绍的详解python的数据库操作(pymysql),希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
原文链接:http://www.cnblogs.com/dongxiaodong/p/10495573.html
您可能感兴趣
- python弹球游戏编写过程(python实现坦克大战游戏 附详细注释)
- python中的eval函数的用法(Python eval的常见错误封装及利用原理详解)
- python 摄像头运用(使用Python控制摄像头拍照并发邮件)
- pythondjango后台管理(基于腾讯云服务器部署微信小程序后台服务Python+Django)
- python3语法规则(详解Python3注释知识点)
- python怎么用代码写出心形(六行python代码的爱心曲线详解)
- python栈和队列(Python 实现数据结构中的栈队列)
- wxpython控件如何移动(基于wxPython的GUI实现输入对话框1)
- python浮点型和整数型(实例讲解Python中浮点型的基本内容)
- python代码如何进行切片索引(Python读取Pickle文件信息并计算与当前时间间隔的方法分析)
- python中startswith使用教程(Python os.access用法实例)
- 如何去阿里云解析域名(利用Python+阿里云实现DDNS动态域名解析的方法)
- pythonflask怎么设置(python flask安装和命令详解)
- python与气象(使用Python和Prometheus跟踪天气的使用方法)
- python采集微信电脑端聊天信息(利用Python实现微信找房机器人实例教程)
- python虚拟环境的使用方法(详解python配置虚拟环境)
- 你还没有升职吗 他竟因为几套激励理论,升职了(你还没有升职吗)
- 某知名企业绩效管理体系及薪酬分配体系操作手册(某知名企业绩效管理体系及薪酬分配体系操作手册)
- 职场人改不掉这4个习惯,只会越混越穷,一辈子也翻不了身(职场人改不掉这4个习惯)
- 华为 联想等46家公司笔试面试题,涉及各行各业,建议收藏(联想等46家公司笔试面试题)
- ()
- ()
热门推荐
- jquery使用data缓存数据
- sqlserver中复合索引(浅析SQL Server 聚焦索引对非聚集索引的影响)
- python按顺序遍历字典(Python字典遍历操作实例小结)
- 怎么开放sql server端口(SQLServer2019配置端口号的实现)
- angular定义一个管道(Angular管道PIPE的介绍与使用方法)
- 虚拟主机哪里有免备案(免备案云主机的真假鉴别)
- jquery的动画效果api(jQuery框架实现元素显示及隐藏三种动画方式)
- vue3 props用法(vue3组合API中setup、 ref、reactive的使用大全)
- laravel认证系统(Laravel框架Auth用户认证操作实例分析)
- 删除有外键约束的数据
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9