일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- checkbox
- 정보처리산업기사
- swipe 배너
- JSON
- JAXBContext
- Tomcat
- bulkinsert
- vue.js
- JQuery
- vscode tutorial
- spring
- query
- jsp
- vue Carousel
- 구멍가게코딩단
- github
- egov
- jdbc
- 마스킹
- NoSQL
- Ajax
- 부스트코스
- 기출문제
- mysql
- INSERT
- MariaDB
- insertAll
- java
- 오라클
- mybatis
- Today
- Total
목록
728x90
반응형
mybatis (3)
개발새발
일반적으로 쓰는 bulk insert의 문법은 아래와 같다. 오라클의 INSERT ALL과 마이바티스의 foreach를 사용하여 INSERT ALL 이후의 문법을 여러 번 반복하는 것이다. INSERT ALL INTO STUDENT_TABLE ( STUDENT_ID , STUDENT_SCHOOL_ID , STUDENT_NAME , STUENT_SEX , STUDENT_ADDR , STUDENT_AGE ) VALUES ( #{list.studentId} , #{list.schoolId} , #{list.studentName} , #{list.studentSex} , #{list.studentAddr} , #{list.studentAge} ) SELECT * FROM DUAL 하지만 테이블에 INSERT를 ..
예를 들어, 회원정보 테이블에서 회원정보를 변경 시키면서 변경이력 테이블에도 데이터를 쌓으려면 회원정보를 변경시키는 update문을 먼저 실행시키고 update문에서 실행된 key값을 변경이력 테이블에 insert 해야한다. 그럴 때 update했다가 select했다가 다시 insert를 해야 돼? That's nono,, 1. mybatis insert into 테이블명 ( ) values ( ) 회원정보 테이블에서 userNo가 autoincrement인 pk일 경우, 먼저 update 된 userNo 값을 가져온다. 가져온 userNo 값이 userVO에 선언되어 있는 userNo필드 안으로 들어간다. 참고 : gocoding.tistory.com/149?category=531751
select case when block_yn = 'Y' then '차단' when drop_yn = 'Y' then '탈퇴' when block_yn ='N' and drop_yn ='N' then '정상' end as status from svc_user; 지금 사용하고 있는 postgre에서는 이렇게해도 문제없이 잘 돌아간다. 하지만 저 쿼리를 mybatis에서 사용하려고 하면 ()로 묶어줘야한다 like this,, select , user_no , (case when block_yn = 'Y' then '차단' when drop_yn = 'Y' then '탈퇴' when block_yn ='N' and drop_yn ='N' then '정상' end) as status , user_email f..