python 对数据库的方法封装

一、做接口测试的时候,很多时候都需要查询数据库来验证结果

以下是对数据库操作的方法封装

import pymysql
import json

"""
通用封装查询
param sql:
param args:
return:返回查询结果 ((),())
 
"""


class MySql(object):

    # 链接数据库
    def conn(self):

        # 创建新链接
        self.conn = pymysql.connect(host='www.baidu.com',
                                    user='user', 
                                    password='password',
                                    database='database', 
                                    charset='utf8')
        # 获取 cursor 对象并以自定义格式为字典
        self.cursor = self.conn.cursor(cursor=pymysql.cursors.DictCursor)
        # cursor = conn.cursor()  # 执行完毕返回的结果集默认以元组显示
        return self.conn, self.cursor


    # 关闭Cursor对象
    def close_conn(self, conn, cursor):
        cursor.close()
        conn.close()

    def select(self, sql):
        conn, cursor = MySql().conn()
        cursor.execute(sql)
        # 读取,执行 sql 后的所有数据
        cds = cursor.fetchall()
        # json 格式化读取到的数据
        rest = json.dumps(cds, default=str, ensure_ascii=False)
        self.close_conn(conn, cursor)
        return rest


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python连接数据库封装代码如下: ```python import pymysql class Database: def __init__(self, host, user, password, database, port=3306, charset='utf8mb4'): self.host = host self.user = user self.password = password self.database = database self.port = port self.charset = charset self.conn = None self.cursor = None def connect(self): self.conn = pymysql.connect(host=self.host, user=self.user, password=self.password, database=self.database, port=self.port, charset=self.charset) self.cursor = self.conn.cursor() def close(self): if self.cursor: self.cursor.close() self.cursor = None if self.conn: self.conn.close() self.conn = None def execute(self, sql, args=None): try: if not self.conn or not self.cursor: self.connect() self.cursor.execute(sql, args) self.conn.commit() return self.cursor.fetchall() except Exception as e: self.conn.rollback() raise e finally: self.close() ``` 这段代码使用了Python的pymysql库来连接MySQL数据库。通过Database类的构造函数来传入数据库相关的信息,包括主机名、用户名、密码、数据库名、端口号和字符集。connect()方法用于连接数据库,close()方法用于关闭数据库连接,execute()方法用于执行SQL语句,并返回查询结果。在execute()方法中,会先检查是否已经连接数据库,如果没有则先进行连接,然后执行SQL语句,并提交事务,最后关闭数据库连接。如果执行SQL语句时出现异常,则回滚事务,然后抛出异常。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贾话

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值