数据库的操作封装成类

数据库的操作封装成类

把数据库操作写成函数:每次都得连接数据库一次连接一次提交,重复操作浪费时间

把数据库操作写成类:一次连接可以多次提交,最佳重复操作时不需要关闭数据库
```
import pymysql

class SQLManager(object):

def __init__(self): #实例化后自动执行此函数
    self.connect()

def connect(self): #此时进入数据库,游标也已经就绪
    self.conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", passwd="123", db="day66", charset="utf8")
    self.cursor = self.conn.cursor(cursor=pymysql.cursors.DictCursor)

def get_list(self, sql, args=None):
    self.cursor.execute(sql, args)
    result = self.cursor.fetchall()
    return result

def get_one(self, sql, args=None):
    self.cursor.execute(sql, args)
    result = self.cursor.fetchone()
    return result


def run(self, sql, args=None):
    self.cursor.execute(sql, args)
    self.conn.commit()

def create(self, sql, args=None):
    self.cursor.execute(sql, args)
    self.conn.commit()
    ret = self.cursor.lastrowid  # 取到刚才创建的记录的ID
    return ret

def m_create(self, sql, args=None):
    # self.cursor.executemany(sql, [(1, 36), (1, 38), (1, 36)])
    self.cursor.executemany(sql, args)  # 批量执行
    self.conn.commit()
    ret = self.cursor.lastrowid  # 取到刚才创建的记录的ID
    return ret

def close(self):
    self.cursor.close()
    self.conn.close()

```

猜你喜欢

转载自www.cnblogs.com/huanghongzheng/p/11163134.html