zoukankan      html  css  js  c++  java
  • Python3 Mysql DBhelper封装

    点击查看代码
    import mysql.connector
    
    class MysqlDb():
        __db_config = {
        'host':'xxx.xxx.xxx',
        'port':3306,
        'username':'root',
        'password':'password',
        'database':'dataname',
        'charset':'utf8'
        }
        def __init__(self,host=__db_config['host'],port=__db_config['port'],user=__db_config['username'],passwd=__db_config['password'],db=__db_config['database'],charset=__db_config['charset']):
            try:
               self.connection = mysql.connector.connect(host=host,port=port,user=user,passwd=passwd,db=db,charset=charset)
            except mysql.connector.Error as e:
                print("Connect Database Failed.",str(e))
            self.cursor = self.connection.cursor(buffered=True)
         # 查询所有
        def fetchall(self, sql):
             try:
                 self.__execute(sql)
                 return self.cursor.fetchall()
             except Exception as error:
                 print(error)
        # 查询多条数据
        def fetchmany(self, sql, size=1):
             try:
                 self.__execute(sql)
                 return self.cursor.fetchmany(size)
             except Exception as error:
                 print(error)
        # 查询一条数据
        def fetchone(self, sql):
             try:
                 self.__execute(sql)
                 return self.cursor.fetchone()
             except Exception as error:
                 print(error)
        # 增删改的方法
        def change(self, sql):
             try:
                 self.__execute(sql)
                 self.connection.commit()
             except Exception as error:
                 print(error)
        # 执行的私有方法
        def __execute(self, sql):
             self.cursor.execute(sql)
        # 关闭连接和游标
        def __del__(self):
             self.connection.close()
    

    使用方法

    点击查看代码
    import MysqlDb as mdb
    
    def main():
        db=mdb.MysqlDb()  
        db.change('insert into test (test)value ("ddd")')
        db.change('delete from test where id=3')
        db.change('update test set test="fff" where id=4')
        rows=db.fetchall('Select * from test')
        for row in rows:
            print(row)
        print(db.fetchmany('Select * from test',2))
        print(db.fetchone('Select * from test'))
    
    main()
    
  • 相关阅读:
    图论分类讨论 bzoj2503相框
    高精+卡特兰数 bzoj3907网格
    树状数组 [Usaco2010 Nov]Cow Photographs
    二分图+贪心优化 [2009国家集训队]最大收益
    UINavigationItem表示UINavigationBar中的控件
    游历的路线
    2019.9.4 清点人数
    [国家集训队]矩阵乘法
    POJ 1113 Wall 凸包 裸
    POJ 1556 The Doors 线段交 dijkstra
  • 原文地址:https://www.cnblogs.com/jchhh912/p/15338754.html
Copyright © 2011-2022 走看看