강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

변수대입에 대해

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

변수대입에 대해

 

자주 사용하는 부분에 대해선 일일이 코딩하는 노가다를 줄여야 한다.
그럼 누구나 알고 있는 &에 대해 이야기하자.
이 놈은 다음과 같이 insert 작업을 편하게 만들어 준다.

SQL> create table test( id varchar2(10), name varchar2(10));

테이블이 생성되었습니다.

SQL> insert into test values('&id', '&name');
id의 값을 입력하십시오: maddog
name의 값을 입력하십시오: 강명규
구   1: insert into test values('&id', '&name')
신   1: insert into test values('maddog', '강명규')

1 개의 행이 만들어졌습니다.

SQL> /
id의 값을 입력하십시오: superman
name의 값을 입력하십시오: 슈퍼맨
구   1: insert into test values('&id', '&name')
신   1: insert into test values('superman', '슈퍼맨')

1 개의 행이 만들어졌습니다.

처음 &를 사용하여 insert문을 만들면 다음부터는 /만 치면,
필요한 부분에 대해서만 입력하면 되므로 좋은 방법이 될수 있다.
&&와 같이 2개를 사용하면 무슨 효과가 있을까? 이 놈은 한번만 입력하면 
그 값을 유지한다. 역시 예제를 보자.

SQL> insert into test values('&id', '&&name');
id의 값을 입력하십시오: kang
name의 값을 입력하십시오: 강명규
구   1: insert into test values('&id', '&&name')
신   1: insert into test values('kang', '강명규')

1 개의 행이 만들어졌습니다.

SQL> /
id의 값을 입력하십시오: ocp
구   1: insert into test values('&id', '&&name')
신   1: insert into test values('ocp', '강명규')

1 개의 행이 만들어졌습니다.

SQL> /
id의 값을 입력하십시오: oracle
구   1: insert into test values('&id', '&&name')
신   1: insert into test values('oracle', '강명규')

1 개의 행이 만들어졌습니다.

처음 insert문에서 name에 2개의 &를 사용했다.
다음부터의 /입력이후론 name에 대해서는 다시 입력하지 않아도 된다.


그럼 일정부분의 입력만 받고 싶을경우는?
&와 .을 사용하여야 한다. 예제를 보면 싶게 알 수 있을 것이다.

SQL> select * from test where birth='&X.0509';
Enter value for x: 1974
old   1: select * from test where birth='&X.0509'
new   1: select * from test where birth='19740509'

NAME              AGE BIRTH
---------- ---------- --------
강명규             27 19740509

SQL> select * from test where birth='&X0509';
Enter value for x0509: 1974
old   1: select * from test where birth='&X0509'
new   1: select * from test where birth='1974'

no rows selected

SQL>

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  89 명