kettle 读取Oracle表中的数据读取不到,但是在plsql里面可以查询出来

流年丶葬梦 2020-04-26 07:43:56
kettle 读取Oracle表中的数据读取不到,但是在plsql里面可以查询出来
执行表输入的时候不会报错,但是读取到的数据为0
在plsql里面查询数据是可以查询出来的
换了个电脑也是一样的结果
...全文
1211 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
znx888888 2021-09-10
  • 打赏
  • 举报
回复

我在练习采集 我建了一张很简单得表 然后通过PLSQL 增加了几条数据 但是在Kettle这边就死活读取不到 得等差不多二十分钟到半小时后 才能读取到 不知道为啥

img

img

流年丶葬梦 2020-05-29
  • 打赏
  • 举报
回复
引用 3 楼 hdy1989 的回复:
一段一段在kettle里面试试,看看那段除了问题呢?

是时间戳格式的问题,plsql里面显示的是26-APR-20 05.01.59.000000 PM格式的时间戳,在kettle里面解析成了另一种格式,所以我给时间戳做的转换就用不了了,然后就报错了,把这个时间戳类型换成varchar2 或者date类型再转换就没问题了
hdy1989 2020-05-27
  • 打赏
  • 举报
回复
一段一段在kettle里面试试,看看那段除了问题呢?
流年丶葬梦 2020-04-26
  • 打赏
  • 举报
回复
TIMESTAMP这个格式时间戳会生成这样的数据字段
26-APR-20 05.01.59.000000 PM
这个字段在不同的编译器里面显示的也不一样
流年丶葬梦 2020-04-26
  • 打赏
  • 举报
回复
select
signDate,
min(signTime) as signTime,
signType,
tel
from (
select EMPLOYEENO,
substr (checktime,0,10) as signDate,
substr (checktime,12,9) as signTime,
case APM
when 'AM' then 1
when 'PM' then 2
end as signType,
tel
from(
select EMPLOYEENO ,
to_char(cast (cast (checktime as timestamp) as date),'yyyy-mm-dd hh24:mi:ss') as checktime ,
to_char(substr (checktime ,27,2)) APM,
substr (MOBILE,4,11) tel
from TH_FS_ATTENDANCE_RECORD
))
where signType = 1
and signDate = to_char(SYSDATE,'YYYY-MM-DD')
group by tel,signDate,signType



用的这个是sql 会不会是因为TIMESTAMP这个格式时间戳字段啊

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧