저도 이 문제 때문에 한참 검색도 해보고 질문도 올려보고 했는데..
결국 파이어버드 2.0 릴리즈 노트에서 찾았습니다. ^^;;
2.0 버전을 사용하신다면 가능합니다.
insert into 테이블 (...) values (...) returning 필드;
insert into 테이블 (...) values (...) returning 필드1, 필드2;
이렇게 쿼리를 실행시키면 returning 에 지정한 필드의 값들을 반환해 주더라구요..
[2.0 릴리즈 노트]
Chapter 5 Data Manipulation Language (DML)
--> New and Extended DSQL Syntaxes
--> RETURNING Clause for Insert Statements
전형식 님이 쓰신 글 :
: Firebird 에서 Generator를 이용하여 Insert 시 Generator 로 설정된 값이 자동증가되는데
: 현재 Insert 처리한후 레코드에 적용된 증가값을 바로 알수있는 방법이 궁금합니다.
: 이것을 유니크한 키값으로 사용하다보니 C/S로 사용시 Max() 값도 정확성이 의심스러운것 같고요...
: mysql같은경우 지원하는함수가 있던데 Firebird 는 어떻게 알수 있나요..
: 답변 부탁드립니다.
: 감사합니다.
|