Python实现一个简单的MySQL类

yipeiwu_com6年前Python基础

本文实例讲述了Python实现一个简单的MySQL类。分享给大家供大家参考。

具体实现方法如下:

复制代码 代码如下:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Created on 2011-2-19
# @author: xiaoxiao
import MySQLdb
import sys
__all__ = ['MySQL']
class MySQL(object):
    '''
    MySQL
    '''
    conn = ''
    cursor = ''
    def __init__(self,host='localhost',user='root',passwd='root',db='mysql',charset='utf8'):
      
        """MySQL Database initialization """
        try:
            self.conn = MySQLdb.connect(host,user,passwd,db)
        except MySQLdb.Error,e:
            errormsg = 'Cannot connect to server\nERROR (%s): %s' %(e.args[0],e.args[1])
            print errormsg
            sys.exit()
          
        self.cursor = self.conn.cursor()
      
    def query(self,sql):
        """  Execute SQL statement """
        return self.cursor.execute(sql)
  
    def show(self):
        """ Return the results after executing SQL statement """
        return self.cursor.fetchall()
             
    def __del__(self):
        """ Terminate the connection """
        self.conn.close()
        self.cursor.close()
      
#test
if __name__ == '__main__':
  
    mysql = MySQL(host=localhost,passwd='test',db='mysql')
    mysql.query('select * from users')
    result = mysql.show()
    print len(result)
    print result[1]

希望本文所述对大家的Python程序设计有所帮助。

相关文章

使用python实现男神女神颜值打分系统(推荐)

使用python实现男神女神颜值打分系统(推荐)

先给大家展示效果图,感觉不错,请参考实现代码。 具体代码如下所示: #!/usr/bin/env python # -*- coding:utf-8 -*- """ pip in...

python使用多进程的实例详解

python多线程适合IO密集型场景,而在CPU密集型场景,并不能充分利用多核CPU,而协程本质基于线程,同样不能充分发挥多核的优势。 针对计算密集型场景需要使用多进程,python的m...

Python+matplotlib+numpy实现在不同平面的二维条形图

Python+matplotlib+numpy实现在不同平面的二维条形图

在不同平面上绘制二维条形图。 本实例制作了一个3d图,其中有二维条形图投射到平面y=0,y=1,等。 演示结果: 完整代码: from mpl_toolkits.mplot3d...

基于Python2、Python3中reload()的不同用法介绍

reload() 简介 作用:用于重新载入之前载入的模块 语法格式:reload(module) 参数:module为模块对象,必须已经被加载 返回值:返回模块对象 注意事项: 多次重复...

Django查询数据库的性能优化示例代码

Django查询数据库的性能优化示例代码

前言 Django数据层提供各种途径优化数据的访问,一个项目大量优化工作一般是放在后期来做,早期的优化是“万恶之源”,这是前人总结的经验,不无道理。如果事先理解Django的优化技巧,开...