Python操作mysql数据库的基本封装,使用pymsql

import pymysql


class PyMysqldbCon():
    # 获取数据库连接
    def getCon(self):
        self.host = '172.16.3.78'
        self.user = 'root'
        self.passwd = '111111'
        self.db = "test_chl"
        self.port = 3306
        self.charset = 'utf8'
        try:
            conn = pymysql.connect(host=self.host, user=self.user, passwd=self.passwd, db=self.db, port=self.port,
                                   charset=self.charset)
            return conn
        except pymysql.Error as e:
            print("pymysql Error:%s" % e)

    # 查询方法,使用con.cursor(pymysql.cursors.DictCursor),返回结果为字典
    def select(self, sql):
        try:
            con = self.getCon()
            cur = con.cursor(pymysql.cursors.DictCursor)
            count = cur.execute(sql)
            fc = cur.fetchall()
            return fc
        except pymysql.Error as e:
            print("pymysql Error:%s" % e)
        finally:
            cur.close()
            con.close()

    # 带参数的更新方法,eg:sql='insert into test values(%s)',params=(6)
    def updateByParam(self, sql, params):
        try:
            con = self.getCon()
            cur = con.cursor()
            count = cur.execute(sql, params)
            con.commit()
            return count
        except pymysql.Error as e:
            con.rollback()
            print("pymysql Error:%s" % e)
        finally:
            cur.close()
            con.close()

    # 不带参数的更新方法
    def update(self, sql):
        try:
            con = self.getCon()
            cur = con.cursor()
            count = cur.execute(sql)
            con.commit()
            return count
        except pymysql.Error as e:
            con.rollback()
            print("pymysql Error:%s" % e)
        finally:
            cur.close()
            con.close()

    def get(self, sql):
        self.sql = sql
        fc = PyMysqldbCon().select(self.sql)
        return fc

    def ins(self, sql):
        self.sql = sql
        count = PyMysqldbCon().update(self.sql)
        return count

    def insparam(self, sql, params):
        self.sql = sql
        self.params = params
        count = PyMysqldbCon().updateByParam(self.sql, self.params)
        return count

    def delop(self, sql):
        self.sql = sql
        count = PyMysqldbCon().update(sql)
        return count

    def change(self, sql):
        self.sql = sql
        count = PyMysqldbCon().update(sql)
        return count


a = PyMysqldbCon().get('select * from test;')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值