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程序设计有所帮助。

相关文章

基于numpy中的expand_dims函数用法

基于numpy中的expand_dims函数用法

常见的一种应用场景: 条件:假设A的shape为[4, 2],B的shape为[5, 2] 目的:实现A中的每一行, 减去B中的所有行(broadcast操作)。 实现: A1 =...

Pandas 重塑(stack)和轴向旋转(pivot)的实现

import numpy as np import pandas as pd from pandas import Series,DataFrame 一、重塑 stack:...

Python基于FTP模块实现ftp文件上传操作示例

本文实例讲述了Python基于FTP模块实现ftp文件上传操作。分享给大家供大家参考,具体如下: #!/usr/bin/python #-*- coding:utf-8 -*- fr...

pycharm+django创建一个搜索网页实例代码

pycharm+django创建一个搜索网页实例代码

本文主要研究的是pycharm+django创建一个搜索网页的实例代码,具体步骤和代码示例如下。 创建工程 比如,我创建的工程目录结构如下: 命令行 进入windows命令行,进入根...

详解Matplotlib绘图之属性设置

详解Matplotlib绘图之属性设置

关于Python数据分析在数学建模中的更多相关应用:Python数据分析在数学建模中的应用汇总(持续更新中!) (1)、导入库 import matplotlib.pyplot a...