python连接mysql并提交mysql事务示例


Posted in Python onMarch 05, 2014
# -*- coding: utf-8 -*-
import sys
import MySQLdb
reload(sys)
sys.setdefaultencoding('utf-8')
class DB(object):
 def __init__(self,host='127.0.0.1',port=3306,user='root',passwd='123',database=''):
  self.__host=host
  self.__port=port
  self.__user=user
  self.__passwd=passwd
  self.__database=database
  self.__open=False
  print '__init__' def __connect__(self):
  if self.__open == False:
   print 'connect db...' 
   self.__conn = MySQLdb.connect(host=self.__host , port=self.__port , user=self.__user , passwd=self.__passwd,charset='utf8')
   self.__open = True

 def __executeSql__(self,sql):
  self.__connect__()
  self.__executor = self.__conn.cursor(cursorclass = MySQLdb.cursors.DictCursor)
  self.__executor.execute('use '+self.__database) #切换数据库
  return self.__executor.execute(sql)
 def executeQueryForObject(self , sql):
  self.__executeSql__(sql)
  return self.__executor.fetchone()
 '''
 返回key=value 字典
 '''
 def executeQueryAll(self , sql):
  self.__executeSql__(sql)
  return self.__executor.fetchall()
 def executeUpdate(self ,sql='' , isAutoCommit=False):
  c = self.__executeSql__(sql)
  if isAutoCommit == True:
   self.commit() #提交事务
  return c
 '''
 #提交事务
 '''
 def commit(self):
   self.__conn.commit() #提交事务
 '''
 #关闭数据库,释放资源
 '''
 def closeDB(self):
  if not self.__conn is None:
   print 'close db...'
   self.__conn.commit() #提交事务
   self.__conn.close()
 def print_parameters(self):
  print self.__user 
  print self.__passwd
  print self.__host
  print self.__port
'''
if __name__ == '__main__':
 db=DB(database='tb2013')
 #db.print_parameters()
 #db.executeSql('select * from tb_user')
 print db.executeQueryForObject('select count(*) as count from tb_user')
 _rows = db.executeQueryAll('select userid,nick from tb_user limit 10');
 print _rows
 for row in _rows:
  print row
  print 'nick:%s' % str(row['nick'])
 print db.executeUpdate(sql='update tb_user set nick=\'test\' where userid=95084397',isAutoCommit=True)
 db.closeDB()
'''
Python 相关文章推荐
在Python中使用mechanize模块模拟浏览器功能
May 05 Python
对Python中Iterator和Iterable的区别详解
Oct 18 Python
python可视化爬虫界面之天气查询
Jul 03 Python
Django 自动生成api接口文档教程
Nov 19 Python
Pytorch maxpool的ceil_mode用法
Feb 18 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
May 18 Python
对python中list的五种查找方法说明
Jul 13 Python
Python数据可视化实现多种图例代码详解
Jul 14 Python
关于python中导入文件到list的问题
Oct 31 Python
详解Python利用configparser对配置文件进行读写操作
Nov 03 Python
python实现文件+参数发送request的实例代码
Jan 05 Python
Selenium浏览器自动化如何上传文件
Apr 06 Python
python遍历文件夹并删除特定格式文件的示例
Mar 05 #Python
python的三目运算符和not in运算符使用示例
Mar 03 #Python
python使用cookielib库示例分享
Mar 03 #Python
python使用cookie库操保存cookie详解
Mar 03 #Python
简单的通用表达式求10乘阶示例
Mar 03 #Python
python显示天气预报
Mar 02 #Python
pyqt4教程之实现半透明的天气预报界面示例
Mar 02 #Python
You might like
JavaScript中一个奇葩的IE浏览器判断方法
2014/04/16 Javascript
js语法学习之判断一个对象是否为数组
2014/05/13 Javascript
JS常用表单验证方法总结
2014/05/22 Javascript
详解AngularJS中的表达式使用
2015/06/16 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
理解JS事件循环
2016/01/07 Javascript
简单了解Backbone.js的Model模型以及View视图的源码
2016/02/14 Javascript
jQuery插件dataTables添加序号列的方法
2016/07/06 Javascript
javascript对浅拷贝和深拷贝的详解
2016/10/14 Javascript
js date 格式化
2017/02/15 Javascript
node.js基于fs模块对系统文件及目录进行读写操作的方法详解
2017/11/10 Javascript
详解ES6 Promise对象then方法链式调用
2018/10/20 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
js实现的在本地预览图片功能示例
2019/11/09 Javascript
vue组件中节流函数的失效的原因和解决方法
2020/12/02 Vue.js
[04:00]DOTA2解说界神雕侠侣 CJ第四天谷子现场过生日
2013/07/30 DOTA
[47:42]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python标准库之itertools库的使用方法
2017/09/07 Python
Python批量提取PDF文件中文本的脚本
2018/03/14 Python
Tensorflow加载预训练模型和保存模型的实例
2018/07/27 Python
基于python实现百度翻译功能
2019/05/09 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
Python Django框架模板渲染功能示例
2019/11/08 Python
浅谈图像处理中掩膜(mask)的意义
2020/02/19 Python
如何理解python中数字列表
2020/05/29 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
Ben Sherman官方网站:英国男装品牌
2019/10/22 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
学生会干部自我鉴定2014
2014/09/18 职场文书
技术员岗位职责
2015/02/04 职场文书
最美劳动诗,致敬所有的劳动者!
2019/07/12 职场文书
spring cloud gateway中如何读取请求参数
2021/07/15 Java/Android
MySQL 主从复制数据不一致的解决方法
2022/03/18 MySQL
分享几种python 变量合并方法
2022/03/20 Python