본문 바로가기

Database&WAS/Oracle

SQL 스크립트 실행시 & 데이터 입력

test.sql의 내용을 아래와 같이 작성

---------------------------------------

set define off;

...

INSERT INTO LOC(LOC_CODE,POS_LON,POS_LAT,REMARK) VALUES('MRL','145.58333','-20.066668','Miner''s & Lake');

..

set define on;

---------------------------------------


sqlplus에서 아래와 같이 스크립트 실행

SQL>@ 'c:\test.sql';


[기타] - escape문자 사용

SQL>set escape '\';

SQL> INSERT INTO LOC(LOC_CODE,POS_LON,POS_LAT,REMARK) VALUES('MRL','145.58333','-20.066668','Miner''s \& Lake');


[참고]

필드명2 의 데이터에 ' 문자가 포함된 경우 데이터를 가지고 insert 문 만드는 예

SELECT 'INSERT INTO 테이블명(필드명1,필드명2) VALUES(''' || 필드명1 || ''',''' ||  REPLACE(필드명2,'''','''''')  || ''');'
FROM 테이블명