CI 묻고 답하기

제목 ci3에서 insert_batch로 삽입한 PK 가져올 수 있는 방법 있을까요?
카테고리 CI 2, 3
글쓴이 나이토리아 작성시각 2022/03/15 15:45:49
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 4694   RSS

insert_id()로는 첫 번째만 가져와서 이게 좀 한계가 있더군요..

 

방법이.. 없겠죠?

 다음글 뷰에서 컨트롤러 데이터 전달 (7)
 이전글 Ci3 cron질문합니다. (3)

댓글

변종원(웅파) / 2022/03/15 16:00:20 / 추천 0

간혹 매뉴얼에 없는 기능이 있는 경우가 있어서 소스를 봤는데 없네요.

foreach 로 insert 실행하셔야할 것 같습니다.

나이토리아 / 2022/03/15 16:14:18 / 추천 0
어후.. 몇천개를 insert할 예정인데 그걸 다 해야하나보네요.. mysql에서도 지원하지는 않겠죠? 감사합니다.
테러보이 / 2022/03/15 18:25:32 / 추천 0
마지막 인서트 아이디로 레인지(마지막 아이디 -개수) 해서 뽑으면 안되나요?
결국 ¹씩 증가할건데
나이토리아 / 2022/03/15 18:26:57 / 추천 0
그것도 생각해봤는데 insert 도중 다른 곳에서 insert가 들어가면 어떻게 해야하나에 대한 의문점울 제기하시더라고요....
테러보이 / 2022/03/15 20:16:03 / 추천 0
pk를 어디에 쓰시려는건가요?
굳이 pk가 아님 작업 필드 하나 추가해서 배치 돌릴때 모두 같은 코드 넣고 후처리하면 되지않을까요?
한대승(불의회상) / 2022/03/16 09:38:06 / 추천 0

insert된 pk를 모두 알아 내려면 웅파님 의견대로 foreach 루프돌면서 배열에 저장하는 방법밖에는 없습니다.

insert_id() 함수 자체가 mysql에서 제공하는 last_insert_id() 와 동일한 기능이기 때문입니다.

나이토리아 / 2022/03/16 09:39:14 / 추천 0
추가로 테이블에 값을 FK를 포함하여 insert하려고 했습니다. 방법이 없는 것으로 보아 그냥 foreach가 정답일 것 같네요. 감사합니다.