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中的两个内置模块介绍
Apr 05 Python
python如何通过protobuf实现rpc
Mar 06 Python
利用Python爬虫给孩子起个好名字
Feb 14 Python
Python中类的初始化特殊方法
Dec 01 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
Mar 13 Python
python模拟表单提交登录图书馆
Apr 27 Python
pandas pivot_table() 按日期分多列数据的方法
Nov 16 Python
利用Django提供的ModelForm增删改数据的方法
Jan 06 Python
Python3实现zip分卷压缩过程解析
Oct 09 Python
numpy按列连接两个维数不同的数组方式
Dec 06 Python
解决python虚拟环境切换无效的问题
Apr 30 Python
基于python 取余问题(%)详解
Jun 03 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
谏山创故乡大分县日田市水坝将设立《进击的巨人》立艾伦、三笠以及阿尔敏的铜像!
2020/03/06 日漫
PHP 和 MySQL 基础教程(四)
2006/10/09 PHP
php 批量添加多行文本框textarea一行一个
2014/06/03 PHP
PHP网站开发中常用的8个小技巧
2015/02/13 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
使用JS取得焦点(focus)元素代码
2014/03/22 Javascript
JavaScript判断是否为数字的4种方法及效率比较
2015/04/01 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
2016/03/07 Javascript
Js与Jq获取浏览器和对象值的方法
2016/03/18 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
nodejs中模块定义实例详解
2017/03/18 NodeJs
详解Vuejs2.0之异步跨域请求
2017/04/20 Javascript
微信小程序开发之toast等弹框提示使用教程
2017/06/08 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
利用纯js + transition动画实现移动端web轮播图详解
2017/09/10 Javascript
基于vue 开发中出现警告问题去除方法
2018/01/25 Javascript
详解使用angular框架离线你的应用(pwa指南)
2019/01/31 Javascript
微信小程序中如何使用flyio封装网络请求
2019/07/03 Javascript
如何在vue中使用HTML 5 拖放API
2021/01/14 Vue.js
go和python调用其它程序并得到程序输出
2014/02/10 Python
python对配置文件.ini进行增删改查操作的方法示例
2017/07/28 Python
Python中关键字global和nonlocal的区别详解
2018/09/03 Python
python实现从wind导入数据
2019/12/03 Python
Python3 读取Word文件方式
2020/02/13 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
通过Python扫描代码关键字并进行预警的实现方法
2020/05/24 Python
Python2.x与3​​.x版本有哪些区别
2020/07/09 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
工商管理专业应届生求职信
2013/11/04 职场文书
五年级英语教学反思
2014/01/31 职场文书
2014年手术室工作总结
2014/11/26 职场文书
运动员入场前导词
2015/07/20 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android