sql server-数组形式的Ibatis检查属性



我使用Ibatis 1.6版

我知道ibatis可以从数组参数中读取值。这是我的代码

SELECT count(1)
  FROM
    TB_R_SW103_TAM r
  WHERE
    AND convert(DATE,r.TAM_APPROVED_DATE) between convert(DATE, #[0]#)
    AND convert(DATE, #[1]#)

但我需要先检查这个值,不管它是否为空。

SELECT count(1)
  FROM
    TB_R_SW103_TAM r
  WHERE
    <isNotEmpty prepend="" property="[0]">
       AND convert(DATE,r.TAM_APPROVED_DATE) between convert(DATE, #[0]#)
       AND convert(DATE, #[1]#)
    </isNotEmpty>

但当我这样做的时候,我犯了一个错误。

对象或列名丢失或为空。对于SELECT INTO语句,请验证每列都有一个名称。对于其他语句,请查找空别名。不允许使用定义为"或[]的别名。将别名更改为有效名称。

我该怎么做?由于某些原因,我不得不使用数组作为该查询的参数。有可能吗?

伙计们,我需要帮助。

Ooops my bad。

显然,我在查询之前使用了CDATA标记。

我把查询放在xml文件中。为了简化我的查询,我使用CDATA标签来避免使用"<"等特殊字符。

在Ibatis Code之前关闭CDATA Tag后,一切都很顺利。

非常感谢我的好伙计们。

最新更新