Heim  >  Artikel  >  Backend-Entwicklung  >  Vorgänge im Zusammenhang mit der Python-Datenbank

Vorgänge im Zusammenhang mit der Python-Datenbank

巴扎黑
巴扎黑Original
2016-12-08 10:39:021294Durchsuche

Hauptsächlich über die DBUtils-Bibliothek und die MySQLdb-Bibliothek von Python zur Implementierung der Verbindungspool-Betriebsdatenbank

import MySQLdb
from DBUtils.PooledDB import PooledDB
class DBHelper(object):
    
    __pool = None
    
    def __init__(self):
        self._conn = DBHelper.__getConnection()
        self._cursor = self._conn.cursor()
    @staticmethod
    def __getConnection():
        if DBHelper.__pool is None :
            __pool = PooledDB(creator = MySQLdb,
                              mincached=1,
                              maxcached=20,
                              host = '127.0.0.1',
                              port = 3306,
                              user = 'root',
                              passwd = '123456',
                              db = 'test')
        
        return __pool.connection()
    def execute(self, sql, parameter=None):
        if parameter is None:
            self._cursor.execute(sql)
        else :
            self._cursor.execute(sql, parameter)
        
    def readOne(self, sql, parameter=None):
        if parameter is None :
            count = self._cursor.execute(sql)
        else :
            count = self._cursor.execute(sql, parameter)
        if count > 0:
            return self._cursor.fetchone()
        else :
            return None
        
    def readList(self, sql, parameter=None):
        if parameter is None :
            count = self._cursor.execute(sql)
        else :
            count = self._cursor.execute(sql, parameter)
        if count > 0:
            return self._cursor.fetchall()
        else :
            return None
        
    def commint(self):
        self._conn.commit()
        
    def close(self):
        if self._cursor :
            self._cursor.close()
        if self._conn :
            self._conn.close()

                                   

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn