Mysql Pentaho DI-表格输入错误“;不能';t从结果集获取行“;
在创建从MySQL数据库提取的ETL时,Pentaho数据集成出现错误 具体地说,我在第一步“表输入”中遇到一个错误。连接很好,所以我知道这不是问题所在。即使是第一排我也有问题 本段是错误日志的一部分:Mysql Pentaho DI-表格输入错误“;不能';t从结果集获取行“;,mysql,date,pentaho,Mysql,Date,Pentaho,在创建从MySQL数据库提取的ETL时,Pentaho数据集成出现错误 具体地说,我在第一步“表输入”中遇到一个错误。连接很好,所以我知道这不是问题所在。即使是第一排我也有问题 本段是错误日志的一部分: 2017/01/11 12:26:00 - IN R.A.L..0 - ERROR (version 7.0.0.0-25, build 1 from 2016-11-05 15.35.36 by buildguy) : Unexpected error 2017/01/11 12:26:00
2017/01/11 12:26:00 - IN R.A.L..0 - ERROR (version 7.0.0.0-25, build 1 from 2016-11-05 15.35.36 by buildguy) : Unexpected error
2017/01/11 12:26:00 - IN R.A.L..0 - ERROR (version 7.0.0.0-25, build 1 from 2016-11-05 15.35.36 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseException:
2017/01/11 12:26:00 - IN R.A.L..0 - Couldn't get row from result set
2017/01/11 12:26:00 - IN R.A.L..0 -
2017/01/11 12:26:00 - IN R.A.L..0 - Unable to get value 'Date' from database resultset, index 63
2017/01/11 12:26:00 - IN R.A.L..0 - Value '0000-00-00' can not be represented as java.sql.Timestamp
2017/01/11 12:26:00 - IN R.A.L..0 -
2017/01/11 12:26:00 - IN R.A.L..0 -
我可以“假设”这是一个声明为timestamp的行中的值,它有一个0000-00-00,但我检查了又检查了一遍,结果不是这样!我有一个时间戳,但它的值不是日志中所说的0000-00-00,而有0000-00-00的那一列不是时间戳,而是日期,所以
我显然错过了一些东西,否则我不会问,所以提前谢谢你的帮助 如果您想知道是哪一行引起了问题,可以在表输入步骤之后添加两个文本文件输出步骤。将一个输出步骤与真实记录相连接(在跃点上可以看到绿色的正确符号)-让我们说
output-A
,将一个输出步骤与虚假记录相连接(在跃点上可以看到红色的X符号)-让我们说output-B
。这样,转换将不会失败,并将导致错误的记录发送到output-B
。通过这种方式,您可以查看导致问题的记录,并将其与其他记录进行比较。感谢您花时间回复。我在pentaho论坛上直接问了同样的问题,问题就解决了
谢谢 使用这个函数为我解决了这个问题
date\u格式(数据\u cadastro\u cli,“%Y-%m-%d”)