5、python3操作mysql(查询语句),加入business文件执行
一、安装pymysql
pip install pymysql
二、创建db_mysql.py文件
db_mysql.py
import pymysql
class DbHandle():
def __init__(self, host, port, user, passwd, db):
self.cursor = self.getConnect(host, port, user, passwd, db)
# 打开数据库连接
def getConnect(self, host, port, user, passwd, db):
conn = pymysql.connect(
host=host,
port=port,
user=user,
passwd=passwd,
db=db,
charset='utf8'
)
return conn
def ripdata(self):
cursor = self.cursor.cursor() # 获取游标
sql = "SELECT id FROM `表名` ORDER BY create_time DESC LIMIT 1;" # 执行mysql查询语句,获取service_code
cursor.execute(sql) # 执行sql语句
results = cursor.fetchall() # 获取所有记录列表
return results[0][0] # 返回service_code
if __name__ == '__main__':
aa = DbHandle("127.0.0.1", 3306, "root", "123456", "data_test3")
b = aa.ripdata()
print(b)
print(type(b))
三、创建business文件
createUrl.py
from rip_dictionary.rip_datacreate.dbmysql.db import DbHandle
from rip_dictionary.rip_datacreate.base.find_element import FindElement
class AAA():
def __init__(self):
self.req = RequestMethod()
self.rd = ReadIni('ApiAddressConfig', 'publicParameters')
self.random = randomMethod()
self.token = LoginRipBusiness().login()[0]
self.fd = json.loads(FindElement().get_configVal('db_rip', 'DBConnectConfig')) # 获取配置文件,数据库的连接信息
self.db = DbHandle(self.fd['host'], # 连接数据库信息
self.fd['port'],
self.fd['user'],
self.fd['password'],
self.fd['database']
)
def saveBaseInfo(self):
url = self.rd.get_value("rip_addr") + "/xx/xx/xx/xx"
data = {
"serviceCode": self.random.get_random_code(),
"serviceName": self.random.get_random_name(),
"dataSourceId": 48,
"providerName": "测试",
"serviceClass": "third",
"accessType": "1",
"accessWay": "1",
"serviceLockConf": {
"lockDimension": ""
},
"serviceInnerConfList": [{
"paramName": "idCard",
"paramType": "java.lang.String",
"isMust": "0",
"chineseName": "身份证号",
"valueThird": "1"
}, {
"paramName": "name",
"paramType": "java.lang.String",
"isMust": "0",
"chineseName": "姓名",
"valueThird": "1"
}, {
"paramName": "mobile",
"paramType": "java.lang.String",
"isMust": "0",
"chineseName": "手机号码",
"valueThird": "1"
}],
"minValidity": 168
}
headers = {
"Content-Type": "application/json",
"X-AUTH-TOKEN": self.token,
"token": self.token
}
rs = json.loads(self.req.run_main('post_json', url, "json", data, headers))
self.rs_id = jsonpath.jsonpath(rs, "$..data.id")[0] # 得到返回id
rs_cood = jsonpath.jsonpath(rs, "$..code")[0]
try:
if rs_cood == '10000':
return True
else:
return "xx接口调用失败!", False
except Exception:
return "xx接口调用失败!", False
#加入business文件执行
def rip_sql(self):
rip_id = self.db.ripdata() # 执行mysql查询语句,获取结果的id,证明调完新增接口,数据库增加一条数据成功
if rip_id == self.rs_id: # 用service_code和接口返回的id对比
return True
else:
return False
if __name__ == '__main__':
aa = AAA()
ab = aa.creaturl()
cc = aa.rip_sql()
print(cc)

浙公网安备 33010602011771号