【发布时间】:2021-02-03 12:57:41
【问题描述】:
将 Robot Framework DatabaseLibrary JayDeBeApi 中的关键字 Query 与 DB2 结合使用,如下所示:${results}= Query CREATE TABLE SCHEMANAME.TEST_TEMP (id BIGINT, name VARCHAR(25)) 正在执行(之后存在表)。
但尽管如此,RobotFramework 还是会抛出一个 FAIL 并且 ${results} 包含消息 DatabaseError: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=SCHEMANAME.TEST_TEMP;TABLE, DRIVER=4.14.122,并且在运行相同的语句后通常甚至包含一个非常简单的消息 Error。
直接在数据库 SQL 窗口中运行上述查询(复制/粘贴)不会返回任何错误。
怎么可能,在RobotFramework中查询成功执行了,但还是抛出了错误?
【问题讨论】:
-
您确定
Query关键字是正确的吗?我的意思是文档提到selectStatement作为其唯一的参数 (franz-see.github.io/Robotframework-Database-Library/api/0.5/…),而您没有传入 select 语句。 -
嗯,我想你是对的。 'Query' 并不是一般意义上的 SQL,而只是 SELECT 语句。 'Execute Sql String' 将是 INSERT 或 DROP 的正确关键字。谢谢!
标签: db2 robotframework jaydebeapi