오라클 프로시저내 구문 실행시 데이터 들어가는 순서. 0 6 1,417

by 농sql [Oracle 기초] 오라클 프로시저 [2019.05.30 10:26:07]


오라클 프로시저내 구문 실행시 아래구문처럼 되어있다면

TB_STEP 테이블에 INSERT 되는 '1', SYSDATE가 COMMIT 되기 때문에  먼저 데이터가 들어간 후 

UPDATE 마친 후 '2', SYSDATE가 INSERT 되는걸로 보여지는 구문인데..

 

실행해보면 '1', SYSDATE 와 '2', SYSDATE가 같이 들어가는 느낌이 들었습니다.

시간은 격차가 있게 들어갔지만

한번에 들어가는 느낌을 받은건 왜 그럴까요?


 

BEGIN

 INSERT INTO TB_STEP (NUM, UP_DT)  VALUES('1', SYSDATE);

 COMMIT;



UPDATE A_TABLE

 SET DATA = '1';

 COMMIT;



 INSERT INTO TB_STEP (NUM, UP_DT)  VALUES('2', SYSDATE);

 COMMIT;



END;

 

by 부쉬맨 [2019.05.30 10:30:08]

한번에 들어가는 느낌은 무슨의미일까요?

0.01초 차이로 들어가니깐 사람이 느끼지못하는 차이일꺼같은데

의심이되신다면 마지막 컬럼에 컬럼 하나 추가해서 sysdate 를찍어보시면 알수 있을꺼같습니다.

 


by 농sql [2019.05.30 11:30:46]

그냥 느낌만 그런거겠쬬 ㅎㅎ;


by 랑에1 [2019.05.30 11:13:29]

기분탓입니다 ㅋㅋ


by 농sql [2019.05.30 11:29:49]

기분탓이겠죠.. ㅋ..ㅋ


by 마농 [2019.05.30 11:20:44]

테이블 컬럼 타입을 date 대신 timestamp 로 바꾸고.
입력할 때 sysdate 대신 systimestamp 로 입력해 보세요.


by 농sql [2019.05.30 11:30:15]

넵!  

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입