• Python3数据库封装


    # coding=utf-8
    __author__ = "leslie"
    import pymysql,pymysql.err
    from CaseApi.common.readConfig import read
    from CaseApi.common.caseLog import Log

    class MysqlDb:
    def __init__(self):
    self.log = Log() # 实例化日志类
    def __db(self):
         '''定义私有方法连接数据库'''
    host = read('mysql','host')
    user = read('mysql','user')
    password = read('mysql','password')
    database = read('mysql','db')
    try:
    self.db = pymysql.connect(host,user,password,database)
    return self.db
    except Exception as e:
    self.log.error ("链接出错: %s"%e)
    # self.__db = pymysql.connect(host, user, password, database)
    # return self.__db

    def select(self,form,table,condition):
    sql = '''select {} from {} {};'''.format(form,table,condition)
    self.log.info(sql)
    cursor = self.__db().cursor()
    try:
    cursor.execute(sql)
    result = cursor.fetchall()
    self.__db().close()
    self.log.debug(result)
    list = []
    for i in result:
    date = {}
    date['user'] = i[0]
    date['psw'] = i[1]
    date['mail'] = i[2]
    list.append(date)
    return list
    except Exception as e:
    self.log.error(e)

    def insert(self,table):
    sql = '''insert into %s;'''%table
    self.log.info(sql)
    cursor = self.__db().cursor()
    try:
    cursor.execute(sql)
    self.__db().commit()
    self.__db().close()
    except Exception as e:
    self.log.error(e)

    def update(self,table,condition):
    sql = '''update {} set {};'''.format(table,condition)
    self.log.info(sql)
    cursor = self.__db().cursor()
    try:
    cursor.execute(sql)
    self.__db().commit()
    self.__db().close()
    except Exception as e:
    self.log.error(e)

    def delete(self,table,condition):
    sql = '''delete from {} {};'''.format(table,condition)
    self.log.info(sql)
    cursor = self.__db().cursor()
    try:
    cursor.execute(sql)
    self.__db().commit()
    self.__db().close()
    except Exception as e:
    self.log.error(e)
  • 相关阅读:
    poj2478
    poj2376
    poj2192
    poj1062
    [HDOJ2639]Bone Collector II(第k优01背包)
    [HDOJ3466]Proud Merchants(贪心+01背包)
    [HDOJ5510]Bazinga(并查集)
    [POJ3264]Balanced Lineup(线段树,区间最值差)
    [HDOJ4325]Flowers(树状数组 离散化)
    [HDOJ5521]Meeting(最短路)
  • 原文地址:https://www.cnblogs.com/leslie003/p/11399780.html
Copyright © 2020-2023  润新知