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中实现字符串类型与字典类型相互转换的方法
Aug 18 Python
基于Django与ajax之间的json传输方法
May 29 Python
通过Pandas读取大文件的实例
Jun 07 Python
Python爬虫实现获取动态gif格式搞笑图片的方法示例
Dec 24 Python
判断python对象是否可调用的三种方式及其区别详解
Jan 31 Python
Python计算一个点到所有点的欧式距离实现方法
Jul 04 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
Apr 10 Python
Selenium使用Chrome模拟手机浏览器方法解析
Apr 10 Python
PythonPC客户端自动化实现原理(pywinauto)
May 28 Python
pandas apply多线程实现代码
Aug 17 Python
Python环境使用OpenCV检测人脸实现教程
Oct 19 Python
Python 远程开关机的方法
Nov 18 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中几种常见安全设置详解
2010/04/06 PHP
JoshChen_web格式编码UTF8-无BOM的小细节分析
2013/08/16 PHP
php-fpm配置详解
2014/02/12 PHP
php操作MongoDB基础教程(连接、新增、修改、删除、查询)
2014/03/25 PHP
php实现的递归提成方案实例
2015/11/14 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
2016/01/03 Javascript
JS中Eval解析JSON字符串的一个小问题
2016/02/21 Javascript
基于chosen插件实现人员选择树搜索自动筛选功能
2016/09/24 Javascript
用JavaScript和jQuery实现瀑布流
2017/03/19 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
JS闭包的几种常见形式实例详解
2017/09/16 Javascript
Bootstrap 3多级下拉菜单实例
2017/11/23 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
如何从零开始利用js手写一个Promise库详解
2018/04/19 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
vue下axios拦截器token刷新机制的实例代码
2020/01/17 Javascript
解决vue做详情页跳转的时候使用created方法 数据不会更新问题
2020/07/24 Javascript
vue+element-ui JYAdmin后台管理系统模板解析
2020/07/28 Javascript
详解vue修改elementUI的分页组件视图没更新问题
2020/11/13 Javascript
python模拟登录百度贴吧(百度贴吧登录)实例
2013/12/18 Python
Python Numpy 数组的初始化和基本操作
2018/03/13 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
python射线法判断检测点是否位于区域外接矩形内
2019/06/28 Python
简单了解python元组tuple相关原理
2019/12/02 Python
医药工作者的求职信范文
2013/09/21 职场文书
写给女朋友的道歉信
2014/01/08 职场文书
《月光启蒙》教学反思
2014/03/01 职场文书
三八红旗集体先进事迹材料
2014/05/22 职场文书
2014初中数学教研组工作总结
2014/12/19 职场文书
幼儿园学前班幼儿评语
2014/12/29 职场文书
大学军训通讯稿
2015/07/18 职场文书
JS实现简单的九宫格抽奖
2022/06/28 Javascript