SnowConvert: Oracle SQL PLus

수락

경고

이 명령에 대한 변환이 보류 중입니다

설명

입력 라인을 읽고 지정된 대체 변수에 저장합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료))

ACC[EPT] variable [NUM[BER] | CHAR | DATE | BINARY_FLOAT | BINARY_DOUBLE] [FOR[MAT] format] [DEF[AULT] default] [PROMPT text|NOPR[OMPT]] [HIDE]

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다. 이 기능을 에뮬레이션하기 위해 입력 작업에 시스템 리소스를 활용하여 SnowCLI!system 명령이 사용됩니다.

1. Accept command

Oracle
 ACCEPT variable_name CHAR PROMPT 'Enter the variable value >'
Copy
SnowSQL(CLI 클라이언트)
 !print Enter the value
!system read aux && echo '!define variable_name='"$aux" > sc_aux_file.sql 
!load sc_aux_file.sql
!system rm sc_aux_file.sql
Copy

경고

이 접근법은 MacOs 및 Linux에만 적용됩니다. Windows에서 이러한 쿼리를 실행하려면 Linux bash 스크립트 언어를 지원하는 터미널이 필요할 수 있습니다.

Known Issues

알려진 문제 없음.

추가

경고

이 명령에 대한 변환이 보류 중입니다

설명

SQL 버퍼의 현재 라인 끝에 지정된 텍스트를 추가합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

A[PPEND] text

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다. Snowflake !edit 명령은 미리 정의된 텍스트 편집기를 사용하여 마지막 쿼리를 편집하는 데 사용할 수 있습니다. 이 접근법이 APPPEND 기능을 모두 커버하지는 못하지만 대안이 될 수 있습니다.

1. Append command

Oracle
APPEND SOME TEXT
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'APPEND STATEMENT' NODE ***/!!!
APPEND SOME TEXT;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

Archive Log

경고

이 명령에 대한 변환이 보류 중입니다

설명

ARCHIVE LOG 명령은 로그 파일 재실행에 대한 정보를 표시합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

ARCHIVE LOG LIST

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다. Snowflake !options 명령을 사용하여 일부 로그 파일의 위치 경로를 표시할 수 있지만, ARCHIVE LOG 명령에서 예상하는 동작을 완전히 준수하지는 않습니다. 변환 시점에 EWI 가 추가됩니다.

1. Archive Log command

Oracle
 ARCHIVE LOG LIST
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'ARCHIVE LOG STATEMENT' NODE ***/!!!
ARCHIVE LOG LIST;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

속성

경고

이 명령에 대한 변환이 보류 중입니다

설명

ATTRIBUTE 명령은 오브젝트 유형 열의 지정된 특성에 대한 표시 특성을 지정합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

ATTR[IBUTE] [type_name.attribute_name [option ...]]

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다.

1. Attribute command

Oracle
 ATTRIBUTE Address.street_address FORMAT A10
Copy
SnowSQL(CLI 클라이언트)
 -- ** MSC-WARNING - MSCEWI3... - ATTRIBUTE SQL*PLUS COMMAND IS NOT CURRENTLY SUPPORTED BY SNOWFLAKE. **
--ATTRIBUTE Address.street_address FORMAT A10
Copy

경고

EWI 의 코드는 아직 정의되지 않았습니다.

Known Issues

1. SnowSQL 은 열의 형식을 설정할 수 있습니다

현재 SnowSQL 은 사용자 정의 유형을 지원하지 않으며 열 형식을 지정하는 명령도 없습니다. 그러나 다음 해결 방법을 사용하여 쿼리 결과의 열 형식을 지정할 수 있습니다.

 SELECT SUBSTR(street_address, 1, 4) FROM person

SELECT TO_VARCHAR(1000.89, '$9,999.99')

SELECT to_varchar('03-Feb-2023'::DATE, 'yyyy.mm.dd');
Copy

이 대체 솔루션은 Oracle에서 ATTRIBUTE 명령이 OFF 옵션을 받을 때 비활성화할 수 있는 추가 전략을 고려해야 합니다.

관련 EWIs

관련 EWIs 없음.

줄 나누기

경고

이 명령에 대한 변환이 보류 중입니다

설명

보고서에서 변경이 발생하는 위치와 수행할 형식 지정 작업을 지정합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

BRE[AK] [ON report_element [action [action]]] ...

report_element := {column|expr|ROW|REPORT}

action := [SKI[P] n|[SKI[P]] PAGE] [NODUP[LICATES]|DUP[LICATES]]

Copy

Snowflake는 이 명령의 사용을 지원하지 않으며 이 명령과 유사한 기능을 가진 명령이 없습니다. 변환 시 EWI 가 추가됩니다.

1. BREAK command

Oracle
 BREAK ON customer_age SKIP 5 DUPLICATES;
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BREAK STATEMENT' NODE ***/!!!
BREAK ON customer_age SKIP 5 DUPLICATES;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

Btitle

경고

이 명령에 대한 변환이 보류 중입니다

설명

BTITLE 명령은 각 보고서 페이지의 하단에 지정된 제목을 배치하고 형식을 지정하거나 현재 BTITLE 정의를 나열합니다. (Oracle SQL Plus 사용자 가이드 및 참조)

BTI[TLE] [printspec [text | variable] ...] | [ON | OFF]

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다.

1. Btitle command

Oracle
 BTITLE BOLD 'This is the banner title'
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BTITLE STATEMENT' NODE ***/!!!
BTITLE BOLD 'This is the banner title';
Copy

Known Issues

1. SnowSQL 은 쿼리에서 사용자 지정 헤더 및 푸터 표시를 지원하지 않습니다

현재 SnowSQL 은 쿼리 출력에서 사용자 정의 헤더 및 푸터 표시를 지원하지 않습니다. 그러나 다음 해결 방법을 사용하여 쿼리 출력에 헤더 및 푸터 정보를 표시할 수 있습니다.

 SELECT column1,
       column2
FROM my_table;

SELECT 'This is the banner title' AS BTITLE;

--Another alternative
!print 'This is the banner title'

--To emulate BTITLE COL 5 'This is the banner title'
SELECT CONCAT(SPACE(5), 'This is the banner title');
Copy

이 대체 솔루션은 Oracle에서 BTITLE 명령이 OFF 옵션을 받을 때 비활성화할 수 있는 추가 전략을 고려해야 합니다.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

변경

경고

이 명령에 대한 변환이 보류 중입니다

설명

CHANGE 명령은 버퍼의 현재 라인에서 지정된 텍스트의 첫 번째 항목을 변경합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

C[HANGE] sepchar old [sepchar [new [sepchar]]]

Copy

Snowflake에는 이 명령과 직접적으로 대응하는 명령이 없습니다. Snowflake !edit 명령은 미리 정의된 텍스트 편집기를 사용하여 마지막 쿼리를 편집하는 데 사용할 수 있습니다. 이 접근법이 CHANGE 기능을 모두 커버하지는 못하지만 대안이 될 수 있습니다.

1. Change command

Oracle
 CHANGE /old/new/
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'CHANGE STATEMENT' NODE ***/!!!
CHANGE /old/new/;
Copy

Known Issues

1. 지원되지 않는 시나리오

CHANGE 명령은 다양한 방식으로 표현할 수 있으며, 이 중 현재 변환기에서 지원하지 않는 명령은 아래와 같습니다.

 3  WHERE col_id = 1
Copy

라인 번호 뒤에 문자열을 입력하면 라인 번호 뒤에 오는 텍스트와 관계없이 해당 라인이 바뀝니다. 이 시나리오는 명령 문법을 따르지 않으므로 지원되지 않습니다.

 CHANGE/OLD/NEW/
Copy

바꾸려는 텍스트 뒤에 공백을 사용하지 않고 명령을 입력합니다. 이 시나리오는 공백에 의한 토큰화 논리를 따르지 않으므로 지원되지 않습니다.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

경고

이 명령에 대한 변환이 보류 중입니다

설명

COLUMN 명령은 지정된 열에 대한 표시 특성을 지정합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

COL[UMN] [{column | expr} [option ...]]

Copy

Snowflake는 이 명령의 사용을 지원하지 않으며 이 명령과 유사한 기능을 가진 명령이 없습니다. 변환 시 EWI 가 추가됩니다.

1. Column command

절이 없는 COLUMN 명령은 현재 열 표시 특성을 모두 나열합니다.

Oracle
 COLUMN column_id ALIAS col_id NOPRINT
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'COLUMN STATEMENT' NODE ***/!!!
COLUMN column_id ALIAS col_id NOPRINT;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

정의

경고

이 명령에 대한 변환이 보류 중입니다

설명

DEFINE 명령은 사용자 또는 미리 정의된 변수를 지정하고 CHAR 값을 할당하거나 단일 변수 또는 모든 변수의 값과 변수 유형을 나열합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

DEF[INE] [variable] | [variable = text]

Copy
!define [variable] | [variable=text]

Copy

참고

변수 값 할당 문에 공백을 추가하지 않는 것이 좋습니다.

1. Define with simple variable assignment

이 경우는 기능적으로 동일합니다.

DEFINE 명령은 !define 명령으로 대체됩니다.

Oracle
 DEFINE column_id = test

DEFINE column_id = &column_reference
Copy
SnowSQL (CLI Client)
 !define column_id = test

!define column_id = &column_reference
Copy

이전에 정의된 변수를 참조할 때 변수 이름 앞에 &를 붙이면, 해당 변수가 존재하지 않는 경우 Oracle은 실행 시간 할당을 허용하지만, Snowflake는 해당 변수가 존재하지 않음을 나타내는 오류를 throw합니다.

2. Define without variable assignments

경고

이 경우는 기능적으로 동일하지 않습니다.

Oracle
 DEFINE column_id
Copy
SnowSQL(CLI 클라이언트)
 !define column_id
Copy

할당 문없이 사용되는 DEFINE 명령은 Oracle에서 변수의 정의를 보여주기 위해 사용되는 반면, Snowflake에서는 DEFINE 명령을 사용하면 변수의 할당이 초기화되므로 Oracle에서 제시된 동작을 시뮬레이션하는 방법은 SELECT 명령을 사용하는 것입니다.

이 솔루션은 다음과 같습니다.

 select '&column_id';
Copy

Known Issues

1. 변수 대체 활성화하기

SnowSQL CLI 에서 변수 값을 대체할 수 있도록 하려면 variable_substitution 구성 옵션을 true로 설정해야 합니다. 이 프로세스는 설치 시, 데이터베이스 인스턴스를 시작할 때 또는 다음 명령을 실행하여 수행할 수 있습니다.

 !set variable_substitution=true
Copy

2. 사전 정의 변수

SQL*Plus 설치에는 9개의 사전 정의된 변수가 있습니다. 이러한 변수는 나중에 사용자가 사용할 수 있습니다. SnowSQL CLI 클라이언트에는 __ROWCOUNT __ SFQID 의 2개 사전 정의 변수만 있습니다.

호스트

경고

이 명령에 대한 변환이 보류 중입니다

설명

HOST 명령은 SQL*Plus를 종료하지 않고 운영 체제 명령을 실행합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

HO[ST] [command]

Copy
!system <command>

Copy

1. Set with simple variable assignment

이 경우는 기능적으로 동일합니다.

HOST 명령은 !system 명령으로 대체됩니다.

Oracle
 HOST dir *.sql
Copy
SnowSQL (CLI Client)
 !system dir *.sql
Copy

Known Issues

알려진 문제 없음.

Related EWIs

관련 EWIs 없음.

프롬프트

경고

이 명령에 대한 변환이 보류 중입니다

설명

PROMPT 명령은 지정된 메시지 또는 빈 라인을 사용자 화면에 보냅니다. 텍스트를 생략하면 PROMPT 는 사용자 화면에 빈 라인을 표시합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

PRO[MPT] [text]

Copy
!print [text]

Copy

1. Simple print

PROMPT 명령은 !print 명령으로 대체됩니다.

이 경우는 기능적으로 동일합니다.

Oracle
 PROMPT

PROMPT text

PROMPT db_link_name = "&1"
Copy
SnowSQL (CLI Client)
 !print

!print text

!print db_link_name = "&1"
Copy

Known Issues

알려진 문제 없음

Related EWIs

관련 EWIs 없음.

Remark

경고

이 명령에 대한 변환이 보류 중입니다

설명

REMARK 명령은 스크립트에서 설명을 시작합니다. SQL*Plus는 설명을 명령으로 해석하지 않습니다. (Oracle SQL Plus 사용자 가이드 및 참조))

REM[ARK] comment

Copy

Snowflake에는 이 명령에 해당하는 직접적인 대체어가 없습니다. 그러나 일부 함수는 에뮬레이션할 수 있습니다.

1. Remark after the first line

이 경우는 기능적으로 동일합니다.

REMARK 명령이 스크립트 시작 부분에 없는 경우 표준 SQL 설명 마커와 이중 하이픈을 사용할 수 있습니다.

Oracle
 SELECT 'hello world' FROM dual;
REMARK and now exit the session
EXIT;
Copy
SnowSQL (CLI Client)
 select 'hello world';
-- and now exit the session
!exit
Copy

2. Remark on the first line

경고

이 경우는 기능적으로 동일하지 않습니다.

REMARK 명령이 스크립트 시작 부분에 있는 경우 다음과 같은 시나리오가 나타날 수 있습니다.

사례 1: 다음 라인은 쿼리이며, 이 경우 REMARK 명령의 Snowflake로 변환이 성공합니다.

사례 2: 다음 라인은 또 다른 SQL* Plus 명령이며, 이 경우 Snowflake가 두 문을 실행할 수 없으므로 변환을 수행할 수 없습니다(이는 스크립트 문에 REMARK 명령에 해당하는 문이 하나만 있는 시나리오에도 적용됩니다).

아래는 처음 2개가 올바르게 변환되지 않은 몇 가지 예입니다.

Oracle
 REMARK single line

REMARK first line
HOST dir *.sql

REMARK first line
SELECT 'hello world' FROM dual;
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'REMARK STATEMENT' NODE ***/!!!
REMARK single line;

!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'REMARK STATEMENT' NODE ***/!!!
REMARK first line;

!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'HOST STATEMENT' NODE ***/!!!
HOST dir *.sql;

!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'REMARK STATEMENT' NODE ***/!!!
REMARK first line;
SELECT 'hello world' FROM dual;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

세트

경고

이 명령에 대한 변환이 보류 중입니다

설명

SET 명령은 시스템 변수를 설정하여 현재 세션의 SQL*Plus 환경 설정을 변경합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

SET system_variable value

Copy
!set <option>=<value>

Copy

참고

변수 값 할당 문에 공백을 추가하지 않는 것이 좋습니다.

1. Set with simple variable assignment

이 경우는 기능적으로 동일합니다.

SET 명령은 !set 명령으로 대체됩니다.

Oracle
 SET wrap on
Copy
SnowSQL (CLI Client)
 !set wrap=true
Copy

2. Define without variable assignments

경고

이 경우는 기능적으로 동일하지 않습니다.

Oracle에서는 숫자 도메인을 가진 시스템 변수에 값을 할당할 때 키-값 규칙을 우회하여 이러한 경우 기본값을 0으로 할당할 수 있습니다. Snowflake에서는 이 기능이 허용되지 않으므로 해당 변수에 0 값을 명시적으로 설정하는 것이 대안이 될 수 있습니다.

Oracle
 SET pagesize
Copy
SnowSQL(CLI 클라이언트)
 !set rowset_size=0
Copy

Known Issues

1. 사전 정의 변수

SET 명령은 두 언어 간에 수량, 이름 또는 도메인이 다를 수 있는 시스템 변수에 대해서만 작동하므로 명령 내에서 사용 중인 변수를 검토하여 올바른 Snowflake 등가성을 찾아야 합니다. Oracle에서 시스템 변수 목록을 보려면 SHOW ALL 명령을 사용할 수 있고, Snowflake에서는 !options을 사용할 수 있습니다.

관련 EWIs

관련 EWIs 없음.

Show

경고

이 명령에 대한 변환이 보류 중입니다

설명

SQLPlus 시스템 변수 또는 현재 SQLPlus 환경의 값을 표시합니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

SHO[W] system_variable  ALL BTI[TLE]  CON_ID  CON_NAME EDITION  ERR[ORS] [ {ANALYTIC VIEW | ATTRIBUTE DIMENSION | HIERARCHY | FUNCTION | PROCEDURE | PACKAGE | PACKAGE BODY | TRIGGER | VIEW | TYPE | TYPE BODY | DIMENSION | JAVA CLASS } [schema.]name]HISTORY  LNO  LOBPREF[ETCH]  PARAMETER[S] [parameter_name]  PDBS PNO  RECYC[LEBIN] [original_name]  REL[EASE]  REPF[OOTER]  REPH[EADER]  ROWPREF[ETCH] SGA SPOO[L]  SPPARAMETER[S] [parameter_name]  SQLCODE STATEMENTC[ACHE] TTI[TLE] USER XQUERY

Copy

Snowflake에는 이 명령에 해당하는 직접적인 대체어가 없습니다. 그러나 일부 함수는 에뮬레이션할 수 있습니다.

1. Show ERRORS

저장 프로시저(저장 함수, 프로시저 및 패키지 포함)의 컴파일 오류를 표시합니다. CREATE 명령을 사용하여 저장 프로시저를 생성한 후 저장 프로시저에 컴파일 오류가 있는 경우 메시지가 표시됩니다.

Snowflake에서는 모든 컴파일 오류를 표시하기 위해 추가 문을 수행할 필요가 없습니다. 컴파일 오류는 CREATE 문을 실행할 때 즉시 표시됩니다.

Oracle
CREATE OR REPLACE PROCEDURE RANCOM_PROC
AS
BEGIN
  INSERT INTO NE_TABLE SELECT 1 FROM DUAL;
END;

SHOW ERRORS
Copy
LINE/COL ERROR
-------- -----------------------------------------------------------------
4/3      PL/SQL: SQL Statement ignored
4/10     PL/SQL: ORA-00925: missing INTO keyword

Copy

참고

INTO 키워드의 철자가 잘못되어 컴파일 오류가 발생할 수 있습니다.

SnowSQL(CLI 클라이언트)
 CREATE OR REPLACE PROCEDURE RANCOM_PROC ()
RETURNS VARCHAR
LANGUAGE SQL
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
EXECUTE AS CALLER
AS
$$
  BEGIN
    INSERT INTO NE_TABLE
    SELECT 1 FROM DUAL;
  END;
$$;

!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'SHOW STATEMENT' NODE ***/!!!

SHOW ERRORS;
Copy
001003 (42000): SQL compilation error:
syntax error line 3 at position 7 unexpected 'INT'.
syntax error line 3 at position 11 unexpected 'PUBLIC'.

Copy

Show ALL

ERRORS 및 SGA 를 제외한 모든 SHOW 옵션의 설정을 알파벳 순서로 나열합니다.

SnowCLI 에서 가능한 모든 옵션을 표시하려면 !options 명령을 실행하면 됩니다.

Oracle
 show all;
Copy
appinfo is OFF and set to "SQL*Plus"
arraysize 15
autocommit OFF
autoprint OFF
autorecovery OFF
autotrace OFF
blockterminator "." (hex 2e)
btitle OFF and is the first few characters of the next SELECT statement
cmdsep OFF
colinvisible OFF
coljson OFF
colsep " "
compatibility version NATIVE
concat "." (hex 2e)
copycommit 0
COPYTYPECHECK is ON
define "&" (hex 26)
describe DEPTH 1 LINENUM OFF INDENT ON
echo OFF
editfile "afiedt.buf"
embedded OFF
errorlogging is OFF
escape OFF
escchar OFF
exitcommit ON
FEEDBACK ON for 6 or more rows SQL_ID OFF
flagger OFF
flush ON
fullcolname OFF
heading ON
headsep "|" (hex 7c)
history is OFF
instance "local"
jsonprint NORMAL
linesize 80
lno 5
loboffset 1
lobprefetch 0
logsource ""
long 80
longchunksize 80
markup HTML OFF HEAD "<style type='text/css'> body {font:10pt Arial,Helvetica,sans-serif; color:black; background:White;} p {font:10pt Arial,Helvetica,sans-serif; color:black; background:White;} table,tr,td {font:10pt Arial,Helvetica,sans-serif; color:Black; background:#f7f7e7; padding:0px 0px 0px 0px; margin:0px 0px 0px 0px;} th {font:bold 10pt Arial,Helvetica,sans-serif; color:#336699; background:#cccc99; padding:0px 0px 0px 0px;} h1 {font:16pt Arial,Helvetica,Geneva,sans-serif; color:#336699; background-color:White; border-bottom:1px solid #cccc99; margin-top:0pt; margin-bottom:0pt; padding:0px 0px 0px 0px;-
} h2 {font:bold 10pt Arial,Helvetica,Geneva,sans-serif; color:#336699; background-color:White; margin-top:4pt; margin-bottom:0pt;} a {font:9pt Arial,Helvetica,sans-serif; color:#663300; background:#ffffff; margin-top:0pt; margin-bottom:0pt; vertical-align:top;}</style><title>SQL*Plus Report</title>" BODY "" TABLE "border='1' width='90%' align='center' summary='Script output'" SPOOL OFF ENTMAP ON PREFORMAT OFF
markup CSV OFF DELIMITER , QUOTE ON
newpage 1
null ""
numformat ""
numwidth 10
pagesize 14
PAUSE is OFF
pno 1
recsep WRAP
recsepchar " " (hex 20)
release 2103000000
repfooter OFF and is NULL
repheader OFF and is NULL
rowlimit OFF
rowprefetch 1
securedcol is OFF
serveroutput OFF
shiftinout INVISIBLE
showmode OFF
spool OFF
sqlblanklines OFF
sqlcase MIXED
sqlcode 0
sqlcontinue "> "
sqlnumber ON
sqlpluscompatibility 21.0.0
sqlprefix "#" (hex 23)
sqlprompt "SQL> "
sqlterminator ";" (hex 3b)
statementcache is 0
suffix "sql"
tab ON
termout ON
timing OFF
trimout ON
trimspool OFF
ttitle OFF and is the first few characters of the next SELECT statement
underline "-" (hex 2d)
USER is "SYSTEM"
verify ON
wrap : lines will be wrapped
xmloptimizationcheck OFF

Copy
SnowSQL(CLI 클라이언트)
 !options
Copy
+-----------------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
| Name                              | Value                  | Help                                                                                                                                          |
|-----------------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------|
| auto_completion                   | True                   | Displays auto-completion suggestions for commands and Snowflake objects                                                                       |
| client_session_keep_alive         | False                  | Keeps the session active indefinitely, even if there is no activity from the user.                                                            |
| client_store_temporary_credential | False                  | Enable Linux users to use temporary file to store ID_TOKEN.                                                                                   |
| connection_options                | {}                     | Set arbitrary connection parameters in underlying Python connector connections.                                                               |
| echo                              | False                  | Outputs the SQL command to the terminal when it is executed                                                                                   |
| editor                            | vim                    | Changes the editor to use for the !edit command                                                                                               |
| empty_for_null_in_tsv             | False                  | Outputs an empty string for NULL values in TSV format                                                                                         |
| environment_variables             | []                     | Specifies the environment variables to be set in the SnowSQL variables.                                                                       |
|                                   |                        | The variable names should be comma separated.                                                                                                 |
| execution_only                    | False                  | Executes queries only. No data will be fetched                                                                                                |
| exit_on_error                     | False                  | Quits when SnowSQL encounters an error                                                                                                        |
| fix_parameter_precedence          | True                   | Fix the connection parameter precedence in the order of 1) Environment variables, 2) Connection parameters, 3) Default connection parameters. |
| force_put_overwrite               | False                  | Forces OVERWRITE=true for PUT. This is to mitigate S3's eventually consistent issue.                                                          |
| friendly                          | True                   | Shows the splash text and goodbye messages                                                                                                    |
| header                            | True                   | Outputs the header in query results                                                                                                           |
| insecure_mode                     | False                  | Turns off OSCP certificate checks                                                                                                             |
| key_bindings                      | emacs                  | Changes keybindings for navigating the prompt to emacs or vi                                                                                  |
| log_bootstrap_file                | ../snowsql_rt.log_bo.. | SnowSQL bootstrap log file location                                                                                                           |
| log_file                          | ../snowsql_rt.log      | SnowSQL main log file location                                                                                                                |
| log_level                         | DEBUG                  | Changes the log level (critical, debug, info, error, warning)                                                                                 |
| login_timeout                     | 120                    | Login timeout in seconds.                                                                                                                     |
| noup                              | False                  | Turns off auto upgrading Snowsql                                                                                                              |
| ocsp_fail_open                    | True                   | Sets the fail open mode for OCSP Failures. For help please refer the documentation.                                                           |
| output_file                       | None                   | Writes output to the specified file in addition to the terminal                                                                               |
| output_format                     | psql                   | Sets the output format for query results.                                                                                                     |
| paging                            | False                  | Enables paging to pause output per screen height.                                                                                             |
| progress_bar                      | True                   | Shows progress bar while transferring data.                                                                                                   |
| prompt_format                     | [user]#[warehouse]@[.. | Sets the prompt format. For help, see the documentation                                                                                       |
| quiet                             | False                  | Hides all output                                                                                                                              |
| remove_comments                   | False                  | Removes comments before sending query to Snowflake                                                                                            |
| remove_trailing_semicolons        | False                  | Removes trailing semicolons from SQL text before sending queries to Snowflake                                                                 |
| results                           | True                   | If set to off, queries will be sent asynchronously, but no results will be fetched.                                                           |
|                                   |                        | Use !queries to check the status.                                                                                                             |
| rowset_size                       | 1000                   | Sets the size of rowsets to fetch from the server.                                                                                            |
|                                   |                        | Set the option low for smooth output, high for fast output.                                                                                   |
| sfqid                             | False                  | Turns on/off Snowflake query id in the summary.                                                                                               |
| sfqid_in_error                    | False                  | Turns on/off Snowflake query id in the error message                                                                                          |
| sql_delimiter                     | ;                      | Defines what reserved keyword splits SQL statements from each other.                                                                          |
| sql_split                         | snowflake.connector... | Choose SQL spliter implementation. Currently snowflake.connector.util_text, or snowflake\.cli.sqlsplit.                                       |
| stop_on_error                     | False                  | Stops all queries yet to run when SnowSQL encounters an error                                                                                 |
| syntax_style                      | default                | Sets the colors for the text of SnowSQL.                                                                                                      |
| timing                            | True                   | Turns on/off timing for each query                                                                                                            |
| timing_in_output_file             | False                  | Includes timing in the output file.                                                                                                           |
| variable_substitution             | False                  | Substitutes variables (starting with '&') with values                                                                                         |
| version                           | 1.2.24                 | SnowSQL version                                                                                                                               |
| wrap                              | True                   | Truncates lines at the width of the terminal screen                                                                                           |
+-----------------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+

Copy

Known Issues

1. SnowCLI 에서는 단일 옵션의 값을 표시할 수 없습니다.

SnowCLI 는 특정 옵션의 값을 표시하는 방법을 제공하지 않습니다. !options 을 사용하여 옵션의 값을 확인할 수 있습니다.

2. 각 SQLPLUS 옵션을 SnowflakeCLI 옵션과 일치시키기 위한 작업은 보류 중입니다.

각 SQLPLUS 옵션에 대한 동등한 정의를 보류 중입니다.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

Spool

경고

이 명령에 대한 변환이 보류 중입니다

설명

SPOOL 명령은 쿼리 결과를 파일에 저장하거나 선택적으로 파일을 프린터로 보냅니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

SPO[OL] [file_name[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]

Copy
!spool [<file_name>] | [off]

Copy

1. Spool without options

이 경우는 기능적으로 동일합니다.

SPOOL 명령에 옵션을 함께 사용하지 않으면 기본적으로 지정된 이름과 확장자를 사용하여 새 파일을 생성합니다. SPOOL 명령은 !spool 명령으로 대체됩니다.

Oracle
SPOOL temp
SPOOL temp.txt
Copy
SnowSQL (CLI Client)
 !spool temp
!spool temp.txt
Copy

2. Spool with write options

경고

이 경우는 기능적으로 동일하지 않습니다.

Oracle은 SPOOL 명령을 통해 파일에 쓸 때 3가지 유형의 옵션을 허용하며 및 APPEND 옵션은 각각 처음부터 쓰기 위한 파일을 생성하고 기존 파일의 끝에 텍스트를 연결합니다(또는 존재하지 않는 경우 새 파일을 생성합니다). Snowflake는 이러한 옵션을 지원하지 않지만 기본 동작은 파일을 생성하고 파일이 있는 경우 그 안에 있는 텍스트를 연결하는 것입니다. 반면 REPLACE 옵션은 기존 내용을 대체하는 특정 파일에 씁니다. Snowflake에서 이 동작을 시뮬레이션하려면 다음 코드와 같이 작성하려는 파일을 삭제하고 다시 작성을 시작하는 것이 좋습니다

Oracle
 SPOOL temp.txt CREATE
SPOOL temp.txt APPEND
SPOOL temp.txt REPLACE
Copy
SnowSQL(CLI 클라이언트)
 !spool temp.txt
!spool temp.txt

!system del temp.txt
!spool temp.txt
Copy

3. Spool turn off

이 경우는 기능적으로 동일합니다.

Oracle에는 결과 스풀링을 끄는 두 가지 옵션(OFF 및 OUT)이 있습니다. 두 옵션 모두 롤링을 중지하는 것이지만, 두 번째 옵션은 파일을 컴퓨터의 표준(기본) 프린터로도 보낸다는 차이점이 있습니다. 이 옵션은 일부 운영 체제에서는 사용할 수 없습니다. Snowflake에는 결과 스풀링을 끄는 옵션만 있습니다

Oracle
 SPOOL OFF
SPOOL OUT
Copy
SnowSQL (CLI Client)
 !spool off
!spool off
Copy

Known Issues

알려진 문제 없음.

Related EWIs

관련 EWIs 없음.

시작

경고

이 명령에 대한 변환이 보류 중입니다

설명

START 명령은 지정된 스크립트에서 SQL* Plus 문을 실행합니다. 스크립트는 로컬 파일 시스템 또는 웹 서버에서 호출할 수 있습니다. (Oracle SQL Plus 사용자 가이드 및 참고 자료)

STA[RT] {url | file_name[.ext] } [arg...]

Copy
!(load | source) {url | file_name[.ext] }

Copy

Snowflake !source!load 명령은 동일합니다.

1. Simple start

START 명령은 !load 명령으로 대체됩니다.

이 경우는 기능적으로 동일합니다.

Oracle
 START C:\Users\My_User\Desktop\My\Path\insert_script.sql
Copy
SnowSQL (CLI Client)
 !load C:\Users\My_User\Desktop\My\Path\insert_script.sql
Copy

2. Start with arguments

Oracle
 START C:\Users\My_User\Desktop\My\Path\insert_script.sql 123 456 789
Copy
SnowSQL (CLI Client)
 !load C:\Users\My_User\Desktop\My\Path\insert_script.sql
Copy

경고

현재 SnowSQL (CLI 클라이언트)에는 스크립트 인자가 지원되지 않습니다.

Known Issues

1. SnowSQL CLI 클라이언트에서는 인자가 지원되지 않습니다

Oracle은 스크립트에 여러 인자를 전달할 수 있으며 &1, &2 등을 사용하여 액세스할 수 있지만, SnowSQL CLI 클라이언트에서는 이 작업을 수행할 수 없습니다. !define 명령으로 변수를 선언하여 인자를 시뮬레이션할 수 있습니다. 이러한 값은 모든 스크립트에 대해 전역적으로 정의되므로 동작이 동일하지 않을 수 있다는 점에 유의하십시오.

이 해결 방법은 다음과 같습니다.

 !set variable_substitution=true
!define 1=123
!define 2=456
!define 3=789
!load C:\Users\My_User\Desktop\My\Path\insert_script.sql
Copy

관련 EWIs

관련 EWIs 없음.

Whenever oserror

경고

이 명령에 대한 변환이 보류 중입니다

설명

WHENEVER OSERROR 명령은 운영 체제 오류가 발생하면 지정된 작업을 수행합니다(기본적으로 SQL*Plus를 종료). (Oracle SQL Plus 사용자 가이드 및 참고 자료)

WHENEVER OSERROR {EXIT [SUCCESS | FAILURE | n | variable | :BindVariable]  [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}

Copy

Snowflake는 이 명령의 사용을 지원하지 않으며 이 명령과 유사한 기능을 가진 명령이 없습니다. 변환 시 EWI 가 추가됩니다.

1. Whenever oserror command

Oracle
 WHENEVER OSERROR EXIT
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER OSERROR EXIT;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.

Whenever sqlerror

경고

이 명령에 대한 변환이 보류 중입니다

설명

WHENEVERSQLERROR 명령은 SQL 명령 또는 PL/SQL 블록이 오류를 생성하는 경우 지정된 작업을 수행합니다(기본적으로 SQL*Plus 종료). (Oracle SQL Plus 사용자 가이드 및 참고 자료)

WHENEVER SQLERROR {EXIT [SUCCESS | FAILURE | WARNING | n | variable  | :BindVariable] [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}

Copy

Snowflake는 이 명령의 사용을 지원하지 않으며 이 명령과 유사한 기능을 가진 명령이 없습니다. 변환 시 EWI 가 추가됩니다.

1. Whenever sqlerror command

Oracle
 WHENEVER SQLERROR EXIT
Copy
SnowSQL(CLI 클라이언트)
 !!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER SQLERROR EXIT;
Copy

Known Issues

알려진 문제 없음.

관련 EWIs

  1. SSC-EWI-0073: 보류 중 함수 동등성 검토.