方法和类 封装python数据库

import pymysql
#用于查找一个数据
def get_one(sql,args):
    conn = pymysql.connect(host="localhost", user="root", password="1234567", database="python_db",charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    cursor.execute(sql,args)
    result = cursor.fetchone()
    cursor.close()
    conn.close()
    return result
#用于查找多个数据
def get_list(sql,args):
    conn = pymysql.connect(host="localhost", user="root", password="1234567", database="python_db",charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    cursor.execute(sql,args)
    result = cursor.fetchall()
    cursor.close()
    conn.close()
    return result
#用于增删改
def modify(sql,args):
    conn = pymysql.connect(host="localhost", user='root', password='1234567', database='python_db', charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    cursor.execute(sql,args)
    conn.commit()
    cursor.close()
    conn.close()

#具有返回值
def create(sql,args):
    conn = pymysql.connect(host="localhost", user='root', password='1234567', database='python_db', charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    cursor.execute(sql, args)
    conn.commit()
    #lastrowid 获得最后插入记录后取得主键ID的方法
    last_row_id=cursor.lastrowid
    cursor.close()
    conn.close()
    return



#创建类防止一个方法在插入多条数据时反复的打开和关闭数据库
class Sql(object):
    #打开数据库
    def connect(self):
        self.conn=pymysql.connect(host="localhost", user='root', password='1234567', database='python_db', charset='utf8')
        self.cursor= self.conn.cursor(cursor=pymysql.cursors.DictCursor)

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

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

    def modify(self,sql,args):
        self.cursor.execute(sql, args)
        self.conn.commit()

    # 添加并且拿返回值
    def create(self,sql,args):
        self.cursor.execute(sql, args)
        self.conn.commit()
        # lastrowid 获得最后插入记录后取得主键ID的方法
        last_row_id = self.cursor.lastrowid
        return last_row_id

    #进行对组数据的修改
    def multiple_motify(self,sql,args):
        #self.cursor.executmany('insert into student(id,name) values(%s,%s)',[(1,'Ax'),(2,'ss')])
        self.cursor.executemany(sql,args)
        self.conn.commit()

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

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值