RobotFramework:从sql查询中获取字符串值

时间:2017-05-25 14:04:33

标签: robotframework

执行返回多行的数据库查询...

${visits_for_this_patient}=  Select from Database
...  Select to_char(visit_date, 'YYYY-MM-DD') from patient_visits where patient_id=${patient_id} order by visit_date
${list_of_visits_for_this_patient}=  create list  ${visits_for_this_patient}
Row Count Should Be Equal To X
...  Select * from patient_visits where patient_id=${patient_id}
...  ${expected_number_of_patients_for_this_visit}
...  ${SPONSOR_NAME}

如何在没有填充的情况下取回特定行的字符串值?我变得喜欢

(b' 2017-03-03',)

当我尝试$ {visits_for_this_patient [0]}

1 个答案:

答案 0 :(得分:2)

你必须更深层次 - db查询的返回值是一个元组列表(这是底层python模块返回数据的方式)。

E.g。它看起来像这样:

[(b'2017-03-03',)]

当你致电${visits_for_this_patient[0]}时,你会得到名单的第一个成员 - 一个元组(你自己看到的)。要获得实际值,只需获取该值的第一个成员(元组的第一个成员);简单地说:

${visits_for_this_patient[0][0]}

该值的结束值应为2017-03-03(作为字符串)。