我似乎在使用MonetDB中的绑定变量时遇到了一个奇怪的限制。如果我通过说where field = $ {var}以正常的方式使用绑定变量,那么它是有效的。但不是在这种情况下:
以下是一个示例:
select case when ${Brand} = 'All'
这是错误:
EXEC: wrong type for argument 1 of prepared statement: char, expected char
通过Pentaho使用最新版本的jdbc驱动程序(2.9)。
答案 0 :(得分:3)
转换为char也不起作用。
然而,将两边都转换为Varchar确实可以工作,即:
cast(${Brand} as varchar(100)) = cast('All' as varchar(100))
所以我觉得char在MonetDB中只是有点时髦