Code
1iBatis 應用程式向 Oralce 資料表欄位插入 NULL 值
2
3ibatis操作oracle資料庫時,如果出現空值,ibatis不是插入NULL,而是出現異常,鬱悶。
4
5如果你先插入空值,必須告訴IBatis當該欄位出現NULL值該用什麼值來替代,方法有2種,如下:
6
7方法一(parameterClass):
8INSERT
9INTO TEST(ID, NAME, PASSWD)
10 VALUES (#id#,#name#,#passwd:VARCHAR:NULL#)
11
12支援的型別在 java.sql.Types 中列示出來了
13注意:DATA 型別預設不能為NULL
14
15方法二(parameterMap):
16 1<parameterMap id="insert-person-paraMap" class="com.unmi.Person" >
17 2 <parameter property="id"/>
18 3 <parameter property="name"/>
19 4 <parameter property="passwd" jdbcType="VARCHAR"/>
20 5</parameterMap>
21 6
22 7<!-- 插入一條Person對應的記錄到資料庫中 -->
23 8<insert id="insertPerson" parameterMap="insert-person-paraMap">
24 9 INSERT INTO PERSON (ID, NAME, PASSWD) VALUES (?,?,?)
2510</insert>
2611
1iBatis 應用程式向 Oralce 資料表欄位插入 NULL 值
2
3ibatis操作oracle資料庫時,如果出現空值,ibatis不是插入NULL,而是出現異常,鬱悶。
4
5如果你先插入空值,必須告訴IBatis當該欄位出現NULL值該用什麼值來替代,方法有2種,如下:
6
7方法一(parameterClass):
8INSERT
9INTO TEST(ID, NAME, PASSWD)
10 VALUES (#id#,#name#,#passwd:VARCHAR:NULL#)
11
12支援的型別在 java.sql.Types 中列示出來了
13注意:DATA 型別預設不能為NULL
14
15方法二(parameterMap):
16 1<parameterMap id="insert-person-paraMap" class="com.unmi.Person" >
17 2 <parameter property="id"/>
18 3 <parameter property="name"/>
19 4 <parameter property="passwd" jdbcType="VARCHAR"/>
20 5</parameterMap>
21 6
22 7<!-- 插入一條Person對應的記錄到資料庫中 -->
23 8<insert id="insertPerson" parameterMap="insert-person-paraMap">
24 9 INSERT INTO PERSON (ID, NAME, PASSWD) VALUES (?,?,?)
2510</insert>
2611