Python实现MySQL操作的方法小结【安装,连接,增删改查等】


Posted in Python onJuly 12, 2017

本文实例讲述了Python实现MySQL操作的方法。分享给大家供大家参考,具体如下:

1. 安装MySQLdb.从网站下载Mysql for python 的package 注意有32位和64位之分.

2. 安装完成之后从Python IDLE 导入MySQLdb

>>>import MySQLdb

3. 新建一个数据库连接:

>>>conn =MySQLdb.connect(host = '127.0.0.1',user= 'root',passwd='123456',db='test',port=3306,charset='utf8')
>>>

注意:其中的hsot 参数的值也可写为host = "localhost", passwd 切勿写成了password, port 参数需要int类型,上面的3306不要加引号. charset要和数据库的字符集相同.

4. 创建游标:

>>>cur = conn.cursor()
>>>

5. 执行插入单条数据命令

>>>cur.execute("insert into msg (title,name,content) values ('python','zz','test mysql insert')")
1L #返回受影响的记录条数.
>>>conn.commit() #需要提交事务插入才会生效.
>>>

6. 利用参数插入多条数据命令

>>>sql = "insert into msg (title,name,content) values (%s,%s,%s)" #定义一个sql语句
>>>cur.executemany(sql,[('title01','name01','content01'),('title02','name02','content02')])
2L
>>>conn.commit()
>>>

7. 利用 for 循环拼接sql命令插入多条数据

>>>sql = "insert into msg (title,name,content) values"
>>>for i in range (100):
  >>> sql += "('id" + str(i) + "'," + "'name" + str(i) + "'," + "'content" + str(i) + "'),"
>>>sql = sql[:-1] #利用切片将最后的"," 删除.
>>>cur.execute(sql)
103L
>>>conn.commit()
>>>

8. 执行删除命令

>>>cur.execute("delete from msg where title = 'title02' ")
1L
>>>conn.commit()
>>>

9. 执行更改命令

>>>cur.execute("update msg set title='changedTitle' where title='title01'")
1L
>>>conn.commit()
>>>

10. 执行查询命令

>>>cur.execute("select * from msg")
3L #返回记录条数
>>>

python的查询语句并不会返回数据库中存取的实际值, 仅返回获得的记录条数, 那么想要获得数据库中的值该怎么做呢?

我们需要用到游标的fetch.

11. 利用fetchone()获得一条记录.该条记录是当前游标所在行的下一行数据.

>>>cur.fetchone()
(1L, 'title01', 'name01', 'content01')

12. 利用fetchmany(size=num) 获取多条记录.

>>>cur.fetchmany(size=5)
((2L, 'python', 'ChenYL', 'insert content'), (3L, 'py03', 'name03', 'content03'), (4L, 'py04', 'name04', 'content04'), (5L, 'id0', 'name0', 'content0'), (7L, 'id2', 'name2', 'content2'))
>>>

Note: 此处若查询数据多于size参数则获取和size参数相同的记录条数, 若查询数据记录少于size参数的值,则只显示查询到的数据记录条数.

13. 利用fetchall()获取从游标位置下一行开始直到查询记录结束的全部记录.

>>>cur.fetchall()
105L
>>>

14. 利用scroll()移动游标

>>>cur.scroll(1,mode="absolute")
>>>

Note: 当mode为absolute时游标走到表中的第一个参数行(若第一个参数为1,则走到表中第一行),次数用fetchone()会取到第二行.

当mode为relative是,此时游标会往下走一行, 假如游标在第三行, scroll之后会走到第四行.

15. 数据库使用完之后记得关闭游标. 关闭数据库连接.

>>>cur.close()
>>>conn.close

注: 上述实例执行结果返回的记录条数和结果与数据库中记录相关.

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 Python
Python的地形三维可视化Matplotlib和gdal使用实例
Dec 09 Python
浅谈python爬虫使用Selenium模拟浏览器行为
Feb 23 Python
详解Python爬取并下载《电影天堂》3千多部电影
Apr 26 Python
Django中如何使用sass的方法步骤
Jul 09 Python
python django model联合主键的例子
Aug 06 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
Feb 17 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
May 03 Python
python 写函数在一定条件下需要调用自身时的写法说明
Jun 01 Python
Python使用pycharm导入pymysql教程
Sep 16 Python
如何使用PyCharm引入需要使用的包的方法
Sep 22 Python
Python实现统计代码行的方法分析
Jul 12 #Python
Python实现导出数据生成excel报表的方法示例
Jul 12 #Python
python 数据的清理行为实例详解
Jul 12 #Python
python的pdb调试命令的命令整理及实例
Jul 12 #Python
Windows平台Python连接sqlite3数据库的方法分析
Jul 12 #Python
python 中split 和 strip的实例详解
Jul 12 #Python
Python实现简单的获取图片爬虫功能示例
Jul 12 #Python
You might like
PHP可变函数的使用详解
2013/06/14 PHP
php环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
ThinkPHP3.1新特性之命名范围的使用
2014/06/19 PHP
Zend Guard使用指南及问题处理
2015/01/07 PHP
10个php函数实用却不常见
2015/10/13 PHP
PHP控制反转(IOC)和依赖注入(DI)
2017/03/13 PHP
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
jQuery 实现侧边浮动导航菜单效果
2014/12/26 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
2015/09/05 Javascript
解析JavaScript模仿块级作用域
2016/12/29 Javascript
nodejs的压缩文件模块archiver用法示例
2017/01/18 NodeJs
vue-cli如何快速构建vue项目
2017/04/26 Javascript
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
2020/06/02 Javascript
python获取微信企业号打卡数据并生成windows计划任务
2019/04/30 Python
Python3 文章标题关键字提取的例子
2019/08/26 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
韩国江南富人区高端时尚百货商场:Galleria(格乐丽雅)
2018/03/27 全球购物
全球最大的生存食品、水和装备专用在线市场:BePrepared.com
2020/01/02 全球购物
自荐书模板
2013/12/19 职场文书
行政助理工作职责范本
2014/03/04 职场文书
农业局学习党的群众路线教育实践活动心得体会
2014/03/07 职场文书
毕业论文评语大全
2014/04/29 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
关心下一代工作先进事迹
2014/08/15 职场文书
个人四风问题对照检查材料思想汇报
2014/10/06 职场文书
骨干教师事迹材料
2014/12/17 职场文书
2014年度个人总结范文
2015/03/09 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
你会写请假条吗?
2019/06/26 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
Go语言使用select{}阻塞main函数介绍
2021/04/25 Golang
Python爬虫之爬取二手房信息
2021/04/27 Python
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android