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中利用生成器实现的并发编程
May 04 Python
python计算圆周率pi的方法
Jul 11 Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
Python使用Phantomjs截屏网页的方法
May 17 Python
用Python将一个列表分割成小列表的实例讲解
Jul 02 Python
如何用Python实现简单的Markdown转换器
Jul 16 Python
python2.7实现邮件发送功能
Dec 12 Python
python实现对列表中的元素进行倒序打印
Nov 23 Python
Python中顺序表原理与实现方法详解
Dec 03 Python
python logging.basicConfig不生效的原因及解决
Feb 20 Python
python 解压、复制、删除 文件的实例代码
Feb 26 Python
基于PyTorch实现一个简单的CNN图像分类器
May 29 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
星际争霸, 教主第一视角, ZvT经典龙蛇演义
2020/03/02 星际争霸
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
PHP实现的简单缓存类
2015/07/29 PHP
详解php实现页面静态化原理
2017/06/21 PHP
PHP实现限制IP访问及提交次数的方法详解
2017/07/17 PHP
jQuery 渐变下拉菜单
2009/12/15 Javascript
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
CodeMirror2 IE7/IE8 下面未知运行时错误的解决方法
2012/03/29 Javascript
script标签属性type与language使用选择
2012/12/02 Javascript
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
onmouseover和onmouseout的一些问题思考
2013/08/14 Javascript
javascript实现ecshop搜索框键盘上下键切换控制
2015/03/18 Javascript
在JavaScript中操作时间之getUTCDate()方法的使用
2015/06/10 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
jQuery实现打开页面渐现效果示例
2016/07/27 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
Google 爬虫如何抓取 JavaScript 的内容
2017/04/07 Javascript
vue项目上传Github预览的实现示例
2018/11/06 Javascript
JS运算符简单用法示例
2020/01/19 Javascript
使用Vue 自定义文件选择器组件的实例代码
2020/03/04 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
2020/07/22 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
Python图片裁剪实例代码(如头像裁剪)
2017/06/21 Python
python控制台实现tab补全和清屏的例子
2019/08/20 Python
Python中的None与 NULL(即空字符)的区别详解
2020/09/24 Python
HTML5 canvas 基本语法
2009/08/26 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
Html5实现文件异步上传功能
2017/05/19 HTML / CSS
印度在线杂货店:bigbasket
2018/08/23 全球购物
公证书标准格式
2014/04/10 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
创先争优活动个人总结
2015/03/04 职场文书
企业安全生产检查制度
2015/08/06 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
Python基本的内置数据类型及使用方法
2022/04/13 Python
java实现web实时消息推送的七种方案
2022/07/23 Java/Android