- PL/SQL block이 아닌 환경(SQL*Plus, iSQL*Plus)에서 생성
- PL/SQL block이 종료되어도 값을 읽을 수 있다
- 서버와 연결이 끊어지면 값을 참조할 수 없다 (cf. 클라이언트(환경) 종료)
* 바인드 변수 선언 및 확인: SQL*Plus Command
- 선언: VAR[IABLE] [variable [type]]
- 확인: VAR[IABLE] [varaiable]
* 바인드 변수 사용
: 바인드 변수 이름 앞에 :(콜론)을 붙임
--------------------------
var
SP2-0568: 바인드 변수가 정의되지 않았습니다.
var a number -- NUMBER 형 바인드 변수에 (p, s) 지정할 수 없음
var
변수 a
데이터유형 NUMBER
var a
데이터유형 NUMBER
print a
A
----------
begin
select avg(sal) into :a
from emp;
end;
/
print a
A
----------
2073.21429
disconnect
print a
SP2-0640: 연결되지 않았습니다.
SP2-0641: "PRINT"(이)가 서버로 연결하는데 필요합니다
var a
변수 a
데이터유형 NUMBER
connect ??/??@211.183.3.52:1521/orcl
연결되었습니다.
print a
A
----------
2073.21429
select * from emp
where sal >= :a;
exit
sqlplus top20/top20@211.183.3.52:1521/orcl
print a
SP2-0552: 바인드 변수 "A" 가 정의되지 않았습니다.
var a
SP2-0552: 바인드 변수 "A" 가 정의되지 않았습니다.
'Oracle > PL/SQL' 카테고리의 다른 글
15일차 # 2-22: %TYPE attribute (0) | 2012.04.24 |
---|---|
15일차 # 2-29: 치환 변수 + 바인드 변수 (0) | 2012.04.24 |
15일차 # 2-24: Boolean (0) | 2012.04.24 |
15일차 # 2-18: BINARY_FLOAT & BINARY_DOUBLE type (0) | 2012.04.24 |
15일차 # 2-14: PL/SQL Scalar Data Types (0) | 2012.04.24 |