.java 에서 하나의 트랜잭션으로 최초와 마지막 insert 문에 sysdate 를 넣는 문장이 있고,
첫 insert 문장이 실행되고 마지막 insert 문장이 실행될 때 1초의 시차가 있었다면..
첫번째 insert 문장의 sysdate 항목과 마지막 insert 문장의 sysdate 항목은 1초의 차이가 난다.
그리고, 첫번째 insert 문장의 sysdate 가 마지막 insert 문장의 sysdate 항목 보다 빠르다고는 할 수 없다.
이것은 DBMS 가 어떻게 처리했느냐에 따라 다르다.
특히, DBMS 의 CPU 가 여럿이라면.. 병렬 처리의 폐해(?)가 적용될 수 있으므로 유의.
이를 동일 시각으로 맞춰주려면,
트랜잭션 초입에 sysdate 를 select 해서 그 값을 가지고 있다가,
매 문장에서 sysdate 대신에 최초에 select 했던 sysdate 값을 넣어주면 된다.
.Fine.
'Server Oriented > DB-Oracle' 카테고리의 다른 글
경품 추첨 DB 로직 (1) | 2019.10.24 |
---|---|
to_char(숫자,'fm90.0') 오라클 형식 (0) | 2017.10.27 |
스크레치 복권 발급과 관련된 단상 (0) | 2017.09.25 |
윤년 추출 (0) | 2017.08.17 |
SQL 쿼리 튜닝 (0) | 2017.08.17 |