ibatis常犯的錯誤記錄

注意範例中所使用的資料庫為Oracle 11g,錯誤訊息會依資料庫不同而有所差異。

 

 

*在xml組態檔中的<update>,<delete>元素加入resultClass屬性

例如...

...

若是加了resultClass,則執行時會出現404錯誤。只要記住只有select才可以加resultClass屬性。

 

錯誤訊息如下

Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML.
Caused by: org.xml.sax.SAXParseException: Attribute "resultClass" must be declared for element type "update"(or "insert" or "delete").

-----

 

 

*動態SQL敘述中所帶入的參數少了#字號

只要漏掉一個#字號就會導致404錯誤,完全無法開啟。例如...

...

注意第4行的id參數後面少了個#字號,正確寫法應該是#id#。

關鍵錯誤訊息如下"Incorrect inline parameter map format (missmatched name=value pairs)"

 

 -----

 

 

*在SQL敘述結尾加上分號(;)

這個錯誤通常都是因為在資料庫管理工具中測試SQL敘述沒問題後,直接將敘述貼到ibatis的組態檔中所造成。

例如...

...

注意上面第4行的結尾多了分號(;),如此在呼叫到此SQL時會出現錯誤,錯誤訊息為ORA-00911: 字元無效

英文的話就是ORA-00911: invalid character

-----

 

 

 

*在查詢,新增,或是修改等涉及多個欄位的SQL敘述結尾加了逗號(,)

例如...

...

注意在上面第3行最後面多了個逗號(,)

這在資料庫管理工具中也是新人經常會犯的小錯。

錯誤訊息為:Caused by: java.sql.SQLException: ORA-00936: 遺漏表示式 (ORA-00936 missing expression)

 -----

 

 

 

文章標籤
創作者介紹

菲比傻大姐&肉豬

phoebelin0606 發表在 痞客邦 PIXNET 留言(0) 人氣()