PL/SQL(Procedure, Package)을 사용하다 보면 동적으로 쿼리(Query)를 생성하거나 텍스트(text) 쿼리를 입력 받아서 실행해야하는 경우가 있다. 다음 두가지 방법을 적절히 사용하면 좋은 결과를 얻을수 있다. EXECUTE IMMEDIATE : Inset, Update, Delete 구문을 실행하거나 Select 구문을 실행 시 INTO를 사용하여 단일 값을 리턴 받을 때 사용 OPEN-FOR : Select 구문을 실행 시 Cursor를 리턴 받을 때 사용 주의 : 바인드 변수(:) 사용 시 쿼리 내부에서 변수명은 의미가 없고 변수 순서, 개수가 USING의 변수 순서, 개수와 일치해야 한다. 바인드 변수가 없다면 USING는 생략가능. 1. EXECUTE IMMEDIATE (IN..
오라클 Benthic Golden(골든) DBMS OUTPUT Window 사용하여 프로시저 로그출력 - 복잡한 프로시저를 실행 시 DBMS_OUTPUT를 삽입하여 값을 확인하거나 디버깅 시 Log를 확인 하는 용도로 사용할 수 있다. - 상단 메뉴 -> View -> DBMS OUTPUT Window를 실행 한다. 1) 프로시저 생성 - 값을 확인 할 위치에 DBMS_OUTPUT.put_line를 추가한다.2) 프로시저 실행- DBMS_OUTPUT Window를 활성화 시킨 후 프로시저를 실행 한다.
오라클 Benthic Golden(골든) 프로시저(Procedure) 실행하기 1) return cursor가 있는 패키지(package) , procedure(프로시저)를 생성한다2) 프리시저 실행 시 REFCURSOR 변수(var)를 하나 선언하여 실행하면 결과 값이 조회된다.