나는 이것을하려고 노력하고 있습니다 :
example.sh에서:
#!/bin/bash
sqlplus / as sysdba
select * from dual;
이 셸 스크립트를 실행하면 sqlplus 유틸리티가 열리지만 제가 작성한 다음 줄을 실행하지 못합니다. sqlplus를 수동으로 종료하면 쉘만 나머지 행을 실행하고 "Select * from Dual"이 유효한 명령이 아니라는 오류가 발생합니다.
스크립트가 SQL 텍스트를 실행하도록 만드는 방법이내에sqlplus의 컨텍스트?
답변1
SQL 스크립트를 실행하려면 sqlplus
다음을 수행해야 합니다.
#!/bin/bash
sqlplus / as sysdba <<EOF
select * from dual;
exit
EOF
또는 다음과 같이 sql 명령을 스크립트에 넣을 수 있습니다.
# cat a.sql
select * from dual;
exit
다음과 같이 명령을 실행하십시오.
#!/bin/bash
sqlplus / as sysdba @a.sql