Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- Bean LifecCycle
- 구간합구하기
- 슈더코드
- 자바 람다식
- 백준
- 상속과 참조
- function test
- 생성자
- @NoArgsConstructor
- pseudo-code
- interrupted()
- 백준 1235번
- ajax
- 백준 11659번
- 백준 11660번
- SQL
- this와 this() 차이
- Java
- 마리아DB 쿼리 로그
- 구간합
- 합배열
- json
- select
- MariaDB Query Log
- InterruptException
- 2차원배열 구간합
- @AllArgsConstructor
- this
- map()
- jquery
Archives
- Today
- Total
평범한 연구소
[myBatis] insert, update 시 NULL 처리 (SQLException: 부적합한 열 유형: 1111) 본문
DB|SQL
[myBatis] insert, update 시 NULL 처리 (SQLException: 부적합한 열 유형: 1111)
soyeonisgood 2022. 11. 17. 19:38테이블 컬럼의 제약조건이 NULL 허용이어도, myBatis에서는 NULL값을 insert, update 할 수 없다. (SQLException: 부적합한 열 유형: 1111).
해결방법은 Mapper.xml에서 NULL값이 들어갈 컬럼에 jdbcType을 설정해주면 된다.
주요 jdbcType
- BIT
- FLOAT
- CHAR
- TIMESTAMP
- VARCHAR
- BINARY
- DOUBLE
- CLOB
- INTEGER
- DATE
- BOOLEAN
- TIME
- NULL
DTO에서 선언한 변수가 Long형이라면, jdbcType은 INTEGER 사용하면 된다.
<insert id="insertMember2" parameterType="com.sp.app.member.Member">
INSERT INTO member2(userId, birth, email, tel, zip, addr1, addr2)
VALUES (#{userId}, #{birth}, #{email}, #{tel},
#{zip, jdbcType=VARCHAR}, #{addr1, jdbcType=VARCHAR},
#{addr2, jdbcType=VARCHAR})
</insert>
<update id="updateMember2" parameterType="com.sp.app.member.Member">
UPDATE member2 SET email=#{email, jdbcType=VARCHAR},
tel=#{tel, jdbcType=VARCHAR}, birth=#{birth, jdbcType=VARCHAR},
zip=#{zip, jdbcType=VARCHAR},
addr1=#{addr1, jdbcType=VARCHAR}, addr2=#{addr2, jdbcType=VARCHAR}
WHERE userId=#{userId}
</update>
'DB|SQL' 카테고리의 다른 글
[MongoDB] 몽고디비 설치하기 (Window) (0) | 2022.12.09 |
---|---|
[Oracle|sql] 시퀀스 마지막 번호(현재값) 알아내기 (0) | 2022.10.26 |
[오라클 SQL] 트리거 (Trigger) (0) | 2022.09.13 |
[오라클 SQL] 프로시저 (procedure) (0) | 2022.09.13 |
[오라클 SQL] 시퀀스 (sequence) (0) | 2022.09.13 |