zoukankan      html  css  js  c++  java
  • 【接口平台】数据库连接调试

    接口平台提供配置数据库地址后直接根据名称即可根据sql操作对应的数据库
    在这里插入图片描述
    大家经常遇到配置数据库后,在执行用例时对应的操作并没有成功,但是这个语句直接在navicat或其他界面化的工具中执行是正确无误的,很多时候可能是因为数据库的信息配置有误导致,故需要完成一个功能,即提供数据库连接测试

    其实数据库目前支持的类型包括mysql和redis,python中是否有根据连接属性,然后ping或者其他字段判断连接是否成功呢?

    mysql直接连接,若连接失败则抛出异常

        def mysql(self,host,port,username,pwd,table):
            """
            数据库连接测试
            """
            conf = {'host': host, 'port': port, 'user': username, 'password': pwd, 'db': table,
                    'charset': 'utf8mb4',
                    'cursorclass': pymysql.cursors.DictCursor}
            try:
                connection = pymysql.connect(**conf)
                connection.close()
                return {'ping': True, 'message': '连接成功'}
            except Exception as e:
                return {'ping': False, 'message': str(e)}
    

    redis提供了ping的方式,但ping失败同样是抛出异常的方式

        def redis(self,host,port,username,pwd,table):
            """
            redis连接测试
            """
            try:
                redis.Redis(host=host, port=port, password=pwd, db=table).ping()
                return {'ping': True, 'message': '连接成功'}
            except Exception as e:
                return {'ping': False, 'message': str(e)}
    

    通过动态的方式调用

        def db_ping(self,db_type,host,port,username,pwd,table):
            """
            db连接调试
            """
            return getattr(DbPing(),db_type)(host,port,username,pwd,table)
    

    虽然实现的姿势有些问题,但是功能实现,期待后续的优化吧

  • 相关阅读:
    webpack-dev-server的使用及说明
    Web框架
    HTTP协议
    jQuery的使用
    发红包
    python操作mysql
    mysql索引与补充
    JavaScript之BOM操作
    JavaScript之DOM操作
    JavaScript之基础语法
  • 原文地址:https://www.cnblogs.com/guanhuohuo/p/12533584.html
Copyright © 2011-2022 走看看