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处理csv数据的方法
Mar 11 Python
使用Python中的线程进行网络编程的入门教程
Apr 15 Python
python中split方法用法分析
Apr 17 Python
从头学Python之编写可执行的.py文件
Nov 28 Python
Python中利用xpath解析HTML的方法
May 14 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
Dec 14 Python
Python中输入和输出(打印)数据实例方法
Oct 13 Python
python绘制封闭多边形教程
Feb 18 Python
python利用 keyboard 库记录键盘事件
Oct 16 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
Jan 24 Python
解决python绘图使用subplots出现标题重叠的问题
Apr 30 Python
python基础之文件处理知识总结
May 23 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
解析PHP高效率写法(详解原因)
2013/06/20 PHP
php中$_POST与php://input的区别实例分析
2015/01/07 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
2016/01/08 PHP
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
jquery 打开窗口返回值实现代码
2010/03/04 Javascript
使用jQuery实现dropdownlist的联动效果(sharepoint 2007)
2011/03/30 Javascript
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
2013/01/23 Javascript
根据配置文件加载js依赖模块
2014/12/29 Javascript
JavaScript闭包详解
2015/02/02 Javascript
jQuery实现将页面上HTML标签换成另外标签的方法
2015/06/09 Javascript
jquery结婚电子请柬特效源码分享
2015/08/21 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
浅谈javascript alert和confirm的美化
2016/12/15 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
浅谈Angular4中常用管道
2017/09/27 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
vue数据初始化initState的实例详解
2019/04/11 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
用python实现的去除win下文本文件头部BOM的代码
2013/02/10 Python
Python实现删除Android工程中的冗余字符串
2015/01/19 Python
Python简单操作sqlite3的方法示例
2017/03/22 Python
Python装饰器简单用法实例小结
2018/12/03 Python
详解python解压压缩包的五种方法
2019/07/05 Python
django 快速启动数据库客户端程序的方法示例
2019/08/16 Python
python实现简单的五子棋游戏
2020/09/01 Python
纯DOM+CSS3实现简单的小风车动画
2016/09/27 HTML / CSS
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
求职面试个人自我评价
2014/02/28 职场文书
经典安踏广告词
2014/03/21 职场文书
2015年八一建军节演讲稿
2015/03/19 职场文书
就业推荐表院系意见
2015/06/05 职场文书
百日宴上的祝酒词
2015/08/10 职场文书
工作汇报材料难写?方法都在这里了!
2019/07/01 职场文书
javascript函数式编程基础
2021/09/15 Javascript
redis数据结构之压缩列表
2022/03/21 Redis