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

 更新时间:2014年03月05日 09:20:14   作者:  
这篇文章主要介绍了python连接mysql并提交mysql事务的示例,需要的朋友可以参考下

复制代码 代码如下:

# -*- 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 MD5加密的示例

    python MD5加密的示例

    这篇文章主要介绍了python MD5加密的示例,帮助大家更好的利用python进行加密,感兴趣的朋友可以了解下
    2020-10-10
  • Python计算字符宽度的方法

    Python计算字符宽度的方法

    这篇文章主要介绍了Python计算字符宽度的方法,结合实例形式较为详细的分析了Python针对字符宽度的计算方法,需要的朋友可以参考下
    2016-06-06
  • Python2中的raw_input() 与 input()

    Python2中的raw_input() 与 input()

    这篇文章主要介绍了Python2中的raw_input() 与 input(),本文分析了它们的内部实现和不同之处,并总结了什么情况下使用哪个函数,需要的朋友可以参考下
    2015-06-06
  • Python基础语法(Python基础知识点)

    Python基础语法(Python基础知识点)

    这篇文章主要介绍了Python基础语法(Python基础知识点),需要的朋友可以参考下
    2016-02-02
  • Python数据结构之优先级队列queue用法详解

    Python数据结构之优先级队列queue用法详解

    queue库提供了一个适用于多线程编程的先进先出(FIFO)数据结构,可以用来在生产者与消费者线程之间安全地传递消息或其他数据,它会为调用者处理锁定,使多个线程可以安全而更容易地处理同一个Queue实例.Queue的大小可能受限,以限制内存使用或处理,需要的朋友可以参考下
    2021-05-05
  • python实现zencart产品数据导入到magento(python导入数据)

    python实现zencart产品数据导入到magento(python导入数据)

    这篇文章主要介绍了python实现zencart产品数据导入到magento(python导入数据),需要的朋友可以参考下
    2014-04-04
  • Python页面加载的等待方式总结

    Python页面加载的等待方式总结

    在本篇内容里小编给大家整理的是关于Python页面加载的等待方式总结内容,有需要的朋友们可以参考下。
    2021-02-02
  • tensorflow 固定部分参数训练,只训练部分参数的实例

    tensorflow 固定部分参数训练,只训练部分参数的实例

    今天小编就为大家分享一篇tensorflow 固定部分参数训练,只训练部分参数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python+OpenCV检测灯光亮点的实现方法

    Python+OpenCV检测灯光亮点的实现方法

    这篇文章主要介绍了Python+OpenCV检测灯光亮点的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 从源码解析Python的Flask框架中request对象的用法

    从源码解析Python的Flask框架中request对象的用法

    Flask中的request对象发送请求使用起来十分方便,但也有一些需要注意的地方,这里我们来从源码解析Python的Flask框架中request对象的用法,需要的朋友可以参考下.
    2016-06-06

最新评论