【问题标题】:RobotFramework: Getting string value back from sql queryRobotFramework:从 sql 查询中获取字符串值
【发布时间】:2017-05-26 23:03:51
【问题描述】:

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

${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]}

【问题讨论】:

    标签: robotframework


    【解决方案1】:

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

    例如它看起来像这样:

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

    当您调用${visits_for_this_patient[0]} 时,您将获得列表的第一个成员 - 一个元组(您自己看到的)。要获取实际值,只需获取该值的第一个成员(元组的第一个成员);很简单:

    ${visits_for_this_patient[0][0]}
    

    它的最终值应该是2017-03-03(作为一个字符串)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-24
      • 1970-01-01
      相关资源
      最近更新 更多