복붙노트

[SQL] 명령 줄에서 SQLPLUS 문

SQL

명령 줄에서 SQLPLUS 문

이 같은 것을 할 수 있습니까?

$ SQLPLUS -s 사용자는 / "이중에서 하나를 선택"통과 또는 에코 $ "이중에서 하나를 선택"| SQLPLUS -s 사용자 / 패스

내가 파일에 이중에서 선택 (1)을 넣고이 작업을 수행 할 수있어 : $ SQLPLUS -s 사용자 / 통과 @ myFile.sql

그러나 나는 그것이 파일을 만들 실제로 필요하다면 단지 SQLPLUS를 충족하기 위해 궁금하네요

해결법

  1. ==============================

    1.그냥 유닉스 / 리눅스에서 사용자 이름 / 암호가 명령 행에 직접 배치하면 "PS -ef"명령을 실행할 수 누구나 볼 수 있음에 유의하십시오. 큰 보안 문제가 (또는 큰 보안 문제로 전환) 수 없습니다.

    그냥 유닉스 / 리눅스에서 사용자 이름 / 암호가 명령 행에 직접 배치하면 "PS -ef"명령을 실행할 수 누구나 볼 수 있음에 유의하십시오. 큰 보안 문제가 (또는 큰 보안 문제로 전환) 수 없습니다.

    나는 보통 파일을 만들거나 당신이 유닉스 / 리눅스에서 "PS -ef"명령으로 볼되는 사용자 이름 / 암호를 보호 할 수 있도록 여기에 문서를 사용하는 것이 좋습니다. 사용자 이름 / 암호가 스크립트 파일 또는 SQL 파일에 포함되어있는 경우는 읽기 권한을 해당 사용자 / 그룹을 사용하여 보호 할 수 있습니다. 그런 다음 사용자를 유지할 수 / 쉘 스크립트에서이 같은 파일 안에 통과 :

    sqlplus -s /nolog <<EOF
    connect user/pass
    select blah;
    quit
    EOF
    
  2. ==============================

    2.난 그냥 확인 내 선택 문장의 끝에 세미콜론이 만들어 정확한 쿼리를 실행할 수 있어요. (출력 접속 제거 PARAMS 실제이다.)

    난 그냥 확인 내 선택 문장의 끝에 세미콜론이 만들어 정확한 쿼리를 실행할 수 있어요. (출력 접속 제거 PARAMS 실제이다.)

    echo "select 1 from dual;" | sqlplus -s username/password@host:1521/service 
    

    산출:

             1
    ----------
             1
    

    중요해야하지만이 맥 OS X 스노우 레오파드 (Snow Leopard)와 오라클 11g에서 실행되는 주.

  3. ==============================

    3.내 버전

    내 버전

    $ sqlplus -s username/password@host:port/service <<< "select 1 from dual;"
    
    
             1
    ----------
             1
    

    편집하다:

    여러 줄의 경우이 사용할 수 있습니다

    $ echo -e "select 1 from dual; \n select 2 from dual;" | sqlplus -s username/password@host:port/service
    
    
             1
    ----------
             1
    
    
             2
    ----------
             2
    
  4. ==============================

    4.나는이 * nix에서 가정?

    나는이 * nix에서 가정?

    "여기에 문서"를 사용 :

    sqlplus -s user/pass <<+EOF
    select 1 from dual;
    +EOF
    

    편집 : 나는 당신의 두 번째 예제를 시도해야한다. 너무 (심지어 Windows에서, 산세 틱), 작동 :

    $ echo 'select 1 from dual;'|sqlplus -s user/pw
    
             1
    ----------
             1
    
    
    $
    
  5. from https://stackoverflow.com/questions/1639704/sqlplus-statement-from-command-line by cc-by-sa and MIT license