2016-07-30 77 views
0

我使用Ibatis版本1.6Ibatis檢查數組形式

我知道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語句,請確認每列都有一個名稱。對於其他語句,查找空的別名。別名定義爲「」或[]是不允許的。將別名更改爲有效的名稱。

我該怎麼做?由於某些原因,我不得不使用數組作爲該查詢的參數。可能嗎?

請在這裏需要一些幫助好人。

回答

0

Ooopss我的壞。

顯然我在查詢之前使用了CDATA標籤。

我把我的查詢放在xml文件中。並簡化我的查詢,我使用CDATA標籤,以避免使用「<」等

後,我ibatis的代碼之前關閉CDATA標籤,萬物順利特殊字符。

非常感謝你我的好人。