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标准库之Sys模块使用详解
May 23 Python
Win7下搭建python开发环境图文教程(安装Python、pip、解释器)
May 17 Python
一个基于flask的web应用诞生 用户注册功能开发(5)
Apr 11 Python
Python线性回归实战分析
Feb 01 Python
对python列表里的字典元素去重方法详解
Jan 21 Python
python3去掉string中的标点符号方法
Jan 22 Python
opencv3/C++实现视频读取、视频写入
Dec 11 Python
Pytorch 保存模型生成图片方式
Jan 10 Python
Python爬虫工具requests-html使用解析
Apr 29 Python
Python之qq自动发消息的示例代码
Feb 18 Python
python中super()函数的理解与基本使用
Aug 30 Python
Python 全局空间和局部空间
Apr 06 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
从一个不错的留言本弄的mysql数据库操作类
2007/09/02 PHP
ThinkPHP中数据操作案例分析
2015/09/27 PHP
2款PHP无限级分类实例代码
2015/11/11 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
jquery数据验证插件(自制,简单,练手)实例代码
2013/10/24 Javascript
基于jquery异步传输json数据格式实例代码
2013/11/23 Javascript
二叉树的非递归后序遍历算法实例详解
2014/02/07 Javascript
jQuery异步验证用户名是否存在示例代码
2014/05/21 Javascript
一段非常简单的js判断浏览器的内核
2014/08/17 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
2015/09/17 Javascript
JavaScript实现数据类型的相互转换
2016/03/06 Javascript
vue中渐进过渡效果实现
2016/10/27 Javascript
实现点击下箭头变上箭头来回切换的两种方法【推荐】
2016/12/14 Javascript
JavaScript正则表达式校验与递归函数实际应用实例解析
2017/08/04 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
Python中__init__和__new__的区别详解
2014/07/09 Python
Python查找相似单词的方法
2015/03/05 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
python 检查文件mime类型的方法
2018/12/08 Python
对python周期性定时器的示例详解
2019/02/19 Python
用Python批量把文件复制到另一个文件夹的实现方法
2019/08/16 Python
python实现证件照换底功能
2019/08/20 Python
Python多继承以及MRO顺序的使用
2019/11/11 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
2020/09/30 Python
洛杉矶时尚女装系列:J.ING US
2019/03/17 全球购物
xxx同志考察材料
2014/02/07 职场文书
婚礼主持词
2014/03/13 职场文书
餐厅周年庆活动方案
2014/08/25 职场文书
优秀中职教师事迹材料
2014/08/26 职场文书
安全月宣传标语
2014/10/07 职场文书
幼儿教师辞职信
2015/02/27 职场文书
浅谈Python3中datetime不同时区转换介绍与踩坑
2021/08/02 Python
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技
vue-cil之axios的二次封装与proxy反向代理使用说明
2022/04/07 Vue.js