[퀴즈] 오라클 페치 0 9 2,254

by 야신 [PL/SQL] PLSQL 페치 [2013.12.19 14:27:12]


declare 
  v_1 INTEGER := 3;
begin
     select no
       into v_1
       from ( select 5 no
               from dual  
             union all
             select 7 no
               from dual );
    
    dbms_output.put_line('정답 :'||to_char(v_1));
exception
  when others then
    dbms_output.put_line('정답 :'||to_char(v_1));
end;

정답 :
1) 정답:3
2) 정답:5
3) 정답:7
4) 정답 : 

지난번 문제 푸신분들은 헷갈릴듯...
이거 왜 이럴까요? 지난번 퀴즈가 맞는 것인지 이번것이 맞는 것인지...요상하네요.
오라클 버그???
by 우리집아찌 [2013.12.19 14:33:38]

2번??

by 야신 [2013.12.19 14:39:47]
지난번 문제를 푸셨군요~ 
그럼 헷갈리실 거에요....저도 원인은 모름..ㅡ,.ㅡ

by 마농 [2013.12.19 15:08:02]
숫자와 문자의 차이네요.

by 야신 [2013.12.19 15:13:00]
마농님 요건 어떨까요? 숫자인데 결과가 달라요..
그래서 오라클 버그가 아닐까 추정중입니다. 
ㅡ_ㅡ;;

declare 
  v_1 NUMBER := 3;
begin
     select no
       into v_1
       from ( select 5 no
               from dual  
             union all
             select 7 no
               from dual );
    
    dbms_output.put_line('정답 :'||to_char(v_1));
exception
  when others then
    dbms_output.put_line('정답 :'||to_char(v_1));
end;

by 마농 [2013.12.19 15:23:53]

그럼 Integer 만 다른 결과?


by 야신 [2013.12.19 15:55:55]
integer종류가 그런것 같습니다. pls_integer 도 똑같은 형상이 있더라고요.

by 김치찌게 [2013.12.20 16:42:04]
built-in type과 그렇지 않은 type의 차이일까요? 문의 드리는 거에요? ㅎ

by 야신 [2013.12.21 04:03:51]
저도 원인을 파악하지 못했어요.
Number 와 interger 가 왜 결과 값이 다른지..

by 김치찌게 [2013.12.26 13:22:49]
왜 type에 따라서 할당 되고 안 되는 지 궁금하긴 하지만 
어쨌든 exception 발생 후 대입된 값을 출력하는 logic인데, 
논리적이지 않은 데이터가 출력 된다고 하더라도 버그로 보기는 힘들지 않을까요... 

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