
DB2의 last_insert_id 함수는 MySQL의 last_insert_id 함수와 다르게 작동합니다. MySQL의 last_insert_id 함수는 INSERT 문을 실행한 후에만 사용할 수 있습니다. 하지만 DB2의 last_insert_id 함수는 INSERT 문을 실행하기 전에 사용할 수 있습니다.
DB2의 last_insert_id 함수를 사용하여 마지막에 삽입된 ID를 가져올 때, 가장 적합한 방법은 SQLCA 변수를 사용하는 것입니다. SQLCA 변수는 DB2의 시스템 변수로, 마지막에 삽입된 ID를 저장합니다.
예를 들어, 다음과 같은 INSERT 문을 사용할 수 있습니다.
#hostingforum.kr
sql
INSERT INTO 테이블명 (컬럼명1, 컬럼명2) VALUES ('값1', '값2');
그런 다음, SQLCA 변수를 사용하여 마지막에 삽입된 ID를 가져올 수 있습니다.
#hostingforum.kr
sql
SELECT SQLCA.SQLCODE, SQLCA.SQLERRM, SQLCA.ID FROM SQLCA;
SQLCA 변수를 사용하여 마지막에 삽입된 ID를 가져올 때, 가장 적합한 방법은 SQLCA.ID 변수를 사용하는 것입니다. SQLCA.ID 변수는 마지막에 삽입된 ID를 저장합니다.
또한, DB2의 last_insert_id 함수를 사용하여 마지막에 삽입된 ID를 가져올 때, CURRVAL 함수를 사용할 수 있습니다. CURRVAL 함수는 시퀀스 변수의 현재 값을 반환합니다.
예를 들어, 다음과 같은 시퀀스를 생성할 수 있습니다.
#hostingforum.kr
sql
CREATE SEQUENCE 시퀀스명 START WITH 1 INCREMENT BY 1;
그런 다음, CURRVAL 함수를 사용하여 마지막에 삽입된 ID를 가져올 수 있습니다.
#hostingforum.kr
sql
SELECT CURRVAL('시퀀스명') FROM SYSIBM.SYSDUMMY1;
CURRVAL 함수를 사용하여 마지막에 삽입된 ID를 가져올 때, 가장 적합한 방법은 시퀀스 변수를 사용하는 것입니다. 시퀀스 변수는 마지막에 삽입된 ID를 저장합니다.
2025-03-07 07:32