• 数据库的操作封装成类


    数据库的操作封装成类

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

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

    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()
    


  • 相关阅读:
    IDEA 现有项目连接SVN
    图片预加载,懒加载
    element-ui table中排序 取消表格默认排序问题
    Linux vim编辑命令
    linux mount 硬盘挂载和卸载
    Linux mke2fs 硬盘格式化
    Linux rm 删除文件
    linux 创建和删除目录
    linux 配置IP
    kickstart自动化安装--tftp+nfs+dhcp
  • 原文地址:https://www.cnblogs.com/huanghongzheng/p/11163134.html
Copyright © 2020-2023  润新知