没有这样的属性:预期的类:Script1343(在groovy脚本中);

时间:2017-02-27 19:12:49

标签: groovy groovy-console

我正在尝试从oracle db中检索数据但是没有获得这样的属性:期望类: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" 
}

1 个答案:

答案 0 :(得分:2)

有几件事是错的。您询问的具体错误是以下结果:

assert expected[rowNum] == "$CST_START_DT_PF, $CST_ITEM_NUM_PF"

您正在引用一个不存在的变量expected

你没有询问下面的事情,但是你会遇到其他问题......

引用$CST_START_DT_PF$CST_ITEM_NUM_PF将会成为一个问题,因为它们也不存在,至少不会以您的代码可行的方式存在。

你也可能会得到与你永远不会递增rowNum相关的意外结果。