python+pymysql对数据库进行增、删、改、查操作 |
您所在的位置:网站首页 › mysq增删改查语句 › python+pymysql对数据库进行增、删、改、查操作 |
一、概述
接口测试中,应用到数据库操作的场景: 1.校验测试数据接口发送请求后明确会对数据库中的某个字段进行修改(编辑,更新、删除操作),但,响应结果中无该字段数据时。 例如:删除订单接口,is_delete 字段,没有 在响应结果中出现! 需要借助数据库校验! 例如删除订单接口, 2.构造测试数据测试数据使用一次就失效,测试前,无法保证测试数据是否存在。 二、pyMySql使用步骤 2.1 安装第三方库PyMySQL # 方法一: pip install PyMySQL # 方法二: pip install PyMySQL -i https://pypi.douban.com/simple/ 2.2 数据库查询操作![]() import pymysql # 定义全局变量 conn = None cursor = None try: # 2. 创建连接 conn = pymysql.connect(host="10.51.102.22", port=3306, user="xxx", password="xxxx33", database="xxxx", charset="utf8") # 3. 获取游标 cursor = conn.cursor() # 4. 执行 insert 语句(新增运营商信息) cursor.execute("INSERT INTO cs_operator " "(id, pay_app_id)" " VALUES(1036, '6124105280304');") # 查看 sql执行,影响多少行 print("影响的行数:", conn.affected_rows()) # 5. 提交事务 conn.commit() except Exception as err: print("插入数据错误:", str(err)) # 回滚事务 conn.rollback() finally: # 6. 关闭游标 cursor.close() # 7. 关闭连接 conn.close() 删除、修改语句除了sql语句的参数不一致,其余步骤同上。 2.4 数据库工具类封装 import pymysql # 封装数据库工具类 class DBUtil(object): # 添加类属性 conn = None @classmethod def __get_conn(cls): # 判断 conn 是否为空,如果是,再创建 if cls.conn is None: cls.conn = pymysql.connect(host="10.51.102.22", port=3306, user="xxxxxxxxxxx", password="xxxxxxxx", database="xxxxxxx", charset="utf8") # 返回 非空连接 return cls.conn @classmethod def __close_conn(cls): # 判断,conn 不为空,需要关闭。 if cls.conn is not None: cls.conn.close() cls.conn = None # 常用方法:查询一条 @classmethod def select_one(cls, sql): cursor = None res = None try: # 获取连接 cls.conn = cls.__get_conn() # 获取游标 cursor = cls.conn.cursor() # 执行 查询语句 cursor.execute(sql) # 提取一条结果 res = cursor.fetchone() except Exception as err: print("查询sql错误:", str(err)) finally: # 关闭游标 cursor.close() # 关闭连接 cls.__close_conn() # 将查询sql执行的 结果,返回 return res # 常用方法:增删改 @classmethod def uid_db(cls, sql): cursor = None try: # 获取连接 cls.conn = cls.__get_conn() # 获取游标 cursor = cls.conn.cursor() # 执行 uid 语句 cursor.execute(sql) print("影响的行数:", cls.conn.affected_rows()) # 提交事务 cls.conn.commit() except Exception as err: # 回滚事务 cls.conn.rollback() print("增删改 SQL 执行失败:", str(err)) finally: # 关闭游标 cursor.close() # 关闭连接 cls.__close_conn() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |