metersphere用python脚本将sql查询多个结果存储成字典的list格式
1、自定义的sql脚本:查询出共有多少行数据2、自定义的sql脚本:3、使用后置脚本中的python代码(注意,现在使用的默认版本是python2)import jsonnum=int(vars.get("itemNum_1")) # 获取行数,并设置成整数outData=[] # 输出结果存储为一个listinItem={"apCode": "${ap_code}","apId": 926,"a
·
1、自定义的sql脚本:查询出共有多少行数据
2、自定义的sql脚本:
3、使用后置脚本中的python代码(注意,现在使用的默认版本是python2)
import json
num=int(vars.get("itemNum_1")) # 获取行数,并设置成整数
outData=[] #输出结果存储为一个list
#定义字典中已知的数据(不需要从数据库中查询到的数据)
for i in range(1,num+1):
#处理从数据库中查询到数据
temp={
"aiEnglishName":vars.get("ai_english_name_"+str(i)),
"aiName":vars.get("ai_name_"+str(i)),
"aiOrder":vars.get("ai_order_"+str(i)),
"category":vars.get("category_"+str(i)),
"dictCode":vars.get("data_type_code_"+str(i)),
"id":vars.get("id_"+str(i)),
"isUnique":vars.get("is_unique_"+str(i)),
"paiCode":vars.get("ai_english_name_"+str(i)),
"paiId":vars.get("id_"+str(i)),
}
temp["apCode"]="${apCode_mysql}"
temp["apName"]="${apName_mysql}"
temp["apId"]="${apId_mysql}"
temp["atype"]="基础类"
temp["dataPrecision"]=""
temp["dictValue"]=""
temp["dirId"]="${dirId}"
temp["groupPackageSort"]=""
temp["groupUpdateTime"]=""
temp["isPublish"]=""
temp["packagePath"]=""
temp["showIndex"]=0
temp["itemType"]="1"
outData.append(temp)
#1.将list格式转成unicode的string(后面replace()和decode()必须是string格式)
#2.将unicode中的u'替换成'
#3.将unicode解码成中文
#4.将字符串中的单引号替换成双引号(字典格式是双引号)
#5.将None换成null,因为从数据库中查到空值显示成None,但是python不识别None
strData=str(outData).replace(': u\'',': \'').decode('unicode-escape').replace("'","\"").replace("None","null")
#log.info(str(type(strData)))
#log.info("strData is:")
#log.info(strData)
vars.put("outMysqlData",strData)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献2条内容
所有评论(0)