【发布时间】:2011-08-31 08:17:36
【问题描述】:
我正在尝试执行本机查询并传递运行时参数并将结果作为列表获取。当我尝试处理 Object [] 时,提取的列之一是字符串。但它以 java.lang.Character 而不是 String 的形式出现。这是下面的查询:
SELECT CASE
WHEN (TRUNC(abm.credit_card_expiration_date) BETWEEN trunc(SYSDATE) AND
trunc(last_day(SYSDATE))) THEN
'Expires'
ELSE
'Expired'
END EXP_STATUS,
TO_CHAR(abm.credit_card_expiration_date, 'MM/YY') EXP_DATE
FROM account_billing_methods abm
WHERE abm.account_id = 201103
AND abm.billing_type_id = 1
AND TRUNC(abm.credit_card_expiration_date) <= TRUNC(LAST_DAY(SYSDATE))
EXP_STATUS 列无法转换为字符串,因为它是字符类型。关于它为什么不起作用的任何想法?
问候, -阿南德
【问题讨论】:
-
是
Character还是Character[]? -
甚至 String.valueOf(Obj [0]) 仅导致获取的列的第一个字符,即'E'
-
getClass.getName() 说它是 java.lang.Character 类型
-
你用的是什么 JPA 提供者,听起来像个 bug
标签: jpa nativequery