没有这样的属性:期望类:Script1343(在groovy脚本);
问题描述:
我想从oracle数据库中检索数据,但没有得到这样的属性:期望class:Script1343(在groovy脚本中);错误没有这样的属性:期望类:Script1343(在groovy脚本);
import java.util.Properties;
import java.io.InputStream;
import groovy.sql.Sql;
def url = 'jdbc:oracle:thin:@//localhost:1521/TEST'
def user = 'DB'
def password = 'DB'
def driver = 'oracle.jdbc.driver.OracleDriver'
def sql = Sql.newInstance('url', 'User', 'password','oracle.jdbc.driver.OracleDriver')
sql.withStatement {
stmt -> stmt.queryTimeout = 30
print "Request TimeOut"
}
def rowNum = 0
sql.eachRow("SELECT DISTINCT CST_START_DT_PF,CST_ITEM_NUM_PF FROM COST "){ row ->
def first = row[0]
def middle = row.CST_START_DT_PF
def one = row.CST_ITEM_NUM_PF
assert expected[rowNum] == "$CST_START_DT_PF, $CST_ITEM_NUM_PF"
}
答
有几件事情是错误的。你问到特定的错误是下面的结果:
assert expected[rowNum] == "$CST_START_DT_PF, $CST_ITEM_NUM_PF"
你引用一个变量expected
不存在。
你并没有问下面的事情,但你要遇到的其他问题......
引用$CST_START_DT_PF
和$CST_ITEM_NUM_PF
将是一个问题,因为他们也根本不存在,至少不会以你的代码的工作方式。
你也可能会得到意想不到的结果,相关的事实是你永远不会增加rowNum
。