SnowConvert: Oracle SQL PLus¶
Accept¶
警告
このコマンドの変換は保留中です
説明¶
入力行を読み込んで、指定された置換変数に格納します。(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]
Snowflakeにはこのコマンドに直接相当するものはありません。この機能をエミュレートするために、入力操作用のシステムリソースを活用して、SnowCLI!system
コマンドが使用されます。
1.コマンドを受け入れる¶
Oracle¶
ACCEPT variable_name CHAR PROMPT 'Enter the variable value >'
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
警告
この方法は MacOs とLinuxにしか適用されないことに注意してください。Windowsでこれらのクエリを実行したい場合は、Linuxのbashスクリプト言語をサポートするターミナルが必要かもしれません。
既知の問題¶
既知の問題はありません。
追加¶
警告
このコマンドの変換は保留中です
説明¶
SQL バッファー内の現在の行の末尾に、指定したテキストを追加します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
A[PPEND] text
Snowflakeにはこのコマンドに直接相当するものはありません。Snowflake !edit
コマンドを使用すると、定義済みのテキストエディターを使用して最後のクエリを編集できます。このアプローチでは APPPEND
のすべての機能をカバーすることはできませんが、代替手段にはなります。
1.コマンドの追加¶
Oracle¶
APPEND SOME TEXT
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'APPEND STATEMENT' NODE ***/!!!
APPEND SOME TEXT;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
アーカイブログ¶
警告
このコマンドの変換は保留中です
説明¶
ARCHIVE LOG
コマンドは、ログファイルのやり直しに関する情報を表示します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
ARCHIVE LOG LIST
Snowflakeにはこのコマンドに直接相当するものはありません。Snowflake !options
コマンドは、いくつかのログファイルのロケーションパスを表示するために使用することができますが、 ARCHIVE LOG
コマンドが期待する動作に完全に準拠していません。変換時には、 EWI が追加されます。
1.アーカイブログコマンド¶
Oracle¶
ARCHIVE LOG LIST
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'ARCHIVE LOG STATEMENT' NODE ***/!!!
ARCHIVE LOG LIST;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
属性¶
警告
このコマンドの変換は保留中です
説明¶
ATTRIBUTE
コマンドは、オブジェクト型列の指定された属性の表示特性を指定します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
ATTR[IBUTE] [type_name.attribute_name [option ...]]
Snowflakeにはこのコマンドに直接相当するものはありません。
1.属性コマンド¶
Oracle¶
ATTRIBUTE Address.street_address FORMAT A10
SnowSQL (CLI クライアント)¶
-- ** MSC-WARNING - MSCEWI3... - ATTRIBUTE SQL*PLUS COMMAND IS NOT CURRENTLY SUPPORTED BY SNOWFLAKE. **
--ATTRIBUTE Address.street_address FORMAT A10
警告
EWI のコードはまだ定義されていません。
既知の問題¶
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');
この代替ソリューションは、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]]
Snowflakeはこのコマンドの使用をサポートしておらず、その機能に類似したものもありません。変換時には、 EWI が追加されます。
1.BREAK コマンド¶
Oracle¶
BREAK ON customer_age SKIP 5 DUPLICATES;
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BREAK STATEMENT' NODE ***/!!!
BREAK ON customer_age SKIP 5 DUPLICATES;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
Btitle¶
警告
このコマンドの変換は保留中です
説明¶
BTITLE
コマンドは、各レポートページの下部に指定のタイトルを配置および形式化するか、現在の BTITLE 定義をリストします。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
BTI[TLE] [printspec [text | variable] ...] | [ON | OFF]
Snowflakeにはこのコマンドに直接相当するものはありません。
1.Btitleコマンド¶
Oracle¶
BTITLE BOLD 'This is the banner title'
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BTITLE STATEMENT' NODE ***/!!!
BTITLE BOLD 'This is the banner title';
既知の問題¶
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');
この代替ソリューションは、Oracleで BTITLE
コマンドが OFF オプションを受け取ったときに無効にする追加の戦略を考慮する必要があります。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
変更¶
警告
このコマンドの変換は保留中です
説明¶
CHANGE
コマンドは、指定したテキストがバッファー内の現在の行で最初に出現する行を変更します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
C[HANGE] sepchar old [sepchar [new [sepchar]]]
Snowflakeにはこのコマンドに直接相当するものはありません。Snowflake !edit
コマンドを使用すると、定義済みのテキストエディターを使用して最後のクエリを編集できます。このアプローチでは CHANGE
のすべての機能をカバーすることはできませんが、代替手段にはなります。
1.コマンド変更¶
Oracle¶
CHANGE /old/new/
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'CHANGE STATEMENT' NODE ***/!!!
CHANGE /old/new/;
既知の問題¶
1.サポートされていないシナリオ
CHANGE コマンドはさまざまな方法で表現できますが、そのうちの2つは現在翻訳によってサポートされていません。以下にそれらを示します。
3 WHERE col_id = 1
行番号の後に文字列を入力すると、行番号の後に続くテキストに関係なく、その行が置換されます。このシナリオはコマンドの文法に従っていないため、サポートされていません。
CHANGE/OLD/NEW/
置換するテキストに続けて、スペースを入れずにコマンドを入力してください。このシナリオは、スペースによるトークン化のロジックに従っていないため、サポートされていません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
列¶
警告
このコマンドの変換は保留中です
説明¶
COLUMN
コマンドは、指定された列の表示属性を指定します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
COL[UMN] [{column | expr} [option ...]]
Snowflakeはこのコマンドの使用をサポートしておらず、その機能に類似したものもありません。変換時には、 EWI が追加されます。
1.列コマンド¶
現在の列表示属性をすべてリストする句のない COLUMN
コマンド。
Oracle¶
COLUMN column_id ALIAS col_id NOPRINT
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'COLUMN STATEMENT' NODE ***/!!!
COLUMN column_id ALIAS col_id NOPRINT;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
定義¶
警告
このコマンドの変換は保留中です
説明¶
DEFINE
コマンドは、ユーザー変数または定義済み変数を指定し、 CHAR 値を割り当てるか、単一変数またはすべての変数の値と変数タイプをリストします。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
DEF[INE] [variable] | [variable = text]
!define [variable] | [variable=text]
注釈
Snowflakeでは、変数値割り当てステートメントに空白を追加しないことを推奨しています。
1.単純な変数割り当てによる定義¶
このケースは機能的に等価です。
DEFINE
コマンドは!define
コマンドに置き換えられます。
Oracle
DEFINE column_id = test
DEFINE column_id = &column_reference
SnowSQL (CLI Client)
!define column_id = test
!define column_id = &column_reference
以前に定義された変数を参照する場合、&の前に変数名を付けます。変数が存在しない場合、Oracleは実行時の割り当てを許可しますが、Snowflakeは当該変数が存在しないことを示すエラーを投げます。
2.変数の割り当てを伴わない定義
警告
このケースは機能的に等価ではありません。
Oracle¶
DEFINE column_id
SnowSQL (CLI クライアント)¶
!define column_id
Oracleでは、割り当てステートメントなしで使用される DEFINE コマンドは、変数の定義を表示するために使用されます。一方、Snowflakeでは、この DEFINE コマンドの使用方法は、変数の割り当てをリセットしてしまうため、Oracleで表示される動作をシミュレートする方法は、 SELECT コマンドを使用することです。
この解決策は次のようなものです。
select '&column_id';
既知の問題¶
1.変数置換の有効化
SnowSQL CLI で変数の値を置き換えられるようにするには、variable_substitution構成オプションをtrueにセットする必要があります。この処理は、インストール時、データベースインスタンスの起動時、または以下のコマンドを実行することで行うことができます。
!set variable_substitution=true
2.定義済み変数
SQL*Plusのインストール時には、9つの定義済み変数があります。これらの変数は、後でユーザーが使用することができます。SnowSQL CLI クライアントには、2つの定義済み変数 __ROWCOUNT
と__ SFQID
しかありません。
ホスト¶
警告
このコマンドの変換は保留中です
説明¶
HOST
コマンドは、 SQL*Plusを離れることなくオペレーティングシステムコマンドを実行します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
HO[ST] [command]
!system <command>
1.単純な変数割り当てによるセット¶
このケースは機能的に等価です。
HOST
コマンドは!system
コマンドに置き換えられます。
Oracle
HOST dir *.sql
SnowSQL (CLI Client)
!system dir *.sql
Known Issues
既知の問題はありません。
Related EWIs
関連 EWIs はありません。
プロンプト
警告
このコマンドの変換は保留中です
説明¶
PROMPT
コマンドは、指定されたメッセージまたは空白行をユーザーの画面に送ります。テキストを省略した場合、PROMPT
はユーザーの画面に空白行を表示します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
PRO[MPT] [text]
!print [text]
1.単純な印刷¶
PROMPT
コマンドは!print
コマンドに置き換えられます。
このケースは機能的に等価です。
Oracle
PROMPT
PROMPT text
PROMPT db_link_name = "&1"
SnowSQL (CLI Client)
!print
!print text
!print db_link_name = "&1"
Known Issues
既知の問題なし
Related EWIs
関連 EWIs はありません。
備考
警告
このコマンドの変換は保留中です
説明¶
REMARK
コマンドは、スクリプトのコメントを開始します。SQL*Plusはコメントをコマンドとして解釈しません。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
REM[ARK] comment
Snowflakeにはこのコマンドに直接相当するものはありません。しかし、その機能の一部はエミュレートすることができます。
1.1行目以降の備考¶
このケースは機能的に等価です。
REMARK
コマンドがスクリプトの先頭にない場合は、標準の SQL コメントマーカーとダブルハイフンを使用できます。
Oracle
SELECT 'hello world' FROM dual;
REMARK and now exit the session
EXIT;
SnowSQL (CLI Client)
select 'hello world';
-- and now exit the session
!exit
2.1行目の備考
警告
このケースは機能的に等価ではありません。
REMARK
コマンドがスクリプトの先頭にある場合、次のようなシナリオが表示される可能性があります。
ケース1: 次の行はクエリで、この場合、REMARK
コマンドのSnowflakeへの変換は成功します。
ケース2: 次の行は別の SQL*Plusコマンドです。この場合、Snowflakeはどちらのステートメントも実行できないため、変換を実行できません(これは、スクリプトステートメント内に REMARK
コマンドに対応するステートメントが1つしかないシナリオにも当てはまります)。
以下は、最初の2つが正しく翻訳できなかった例です。
Oracle¶
REMARK single line
REMARK first line
HOST dir *.sql
REMARK first line
SELECT 'hello world' FROM dual;
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;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
設定¶
警告
このコマンドの変換は保留中です
説明¶
SET
コマンドは、システム変数をセットして、現在のセッションの SQL*Plus環境設定を変更します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
SET system_variable value
!set <option>=<value>
注釈
Snowflakeでは、変数値割り当てステートメントに空白を追加しないことを推奨しています。
1.単純な変数割り当てによるセット¶
このケースは機能的に等価です。
SET
コマンドは!set
コマンドに置き換えられます。
Oracle
SET wrap on
SnowSQL (CLI Client)
!set wrap=true
2. Define without variable assignments
警告
このケースは機能的に等価ではありません。
Oracleでは、数値ドメインを持つシステム変数に値を割り当てるためのキー値ルールをバイパスすることができ、そのような場合にはデフォルト値として0が割り当てられます。Snowflakeではこれは許されないので、別の方法として、当該変数に明示的に0の値をセットします。
Oracle¶
SET pagesize
SnowSQL (CLI クライアント)¶
!set rowset_size=0
既知の問題¶
1.定義済み変数
SET コマンドはシステム変数に対してのみ機能します。システム変数は2つの言語間で数量、名前、またはドメインが異なる可能性があります。そのため、コマンド内で使用されている変数を確認して、正しいSnowflake相当値を見つける必要があります。Oracleでシステム変数のリストを表示するには、コマンド SHOW ALL
を使用しますが、Snowflakeでは !options
を使用します。
関連 EWIs¶
関連 EWIs はありません。
表示¶
警告
このコマンドの変換は保留中です
説明¶
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
Snowflakeにはこのコマンドに直接相当するものはありません。しかし、その機能の一部はエミュレートすることができます。
1.ERRORS の表示¶
ストアドプロシージャ(ストアド関数、プロシージャ、パッケージを含む)のコンパイルエラーを表示します。CREATE コマンドを使用してストアドプロシージャを作成した後、ストアドプロシージャにコンパイルエラーがある場合はメッセージが表示されます。
Snowflakeでは、すべてのコンパイルエラーを表示するために余計なステートメントを実行する必要はありません。CREATE ステートメントを実行すると、コンパイルエラーが即座に表示されます。
Oracle¶
CREATE OR REPLACE PROCEDURE RANCOM_PROC
AS
BEGIN
INSERT INTO NE_TABLE SELECT 1 FROM DUAL;
END;
SHOW ERRORS
LINE/COL ERROR
-------- -----------------------------------------------------------------
4/3 PL/SQL: SQL Statement ignored
4/10 PL/SQL: ORA-00925: missing INTO keyword
注釈
なお、 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;
001003 (42000): SQL compilation error:
syntax error line 3 at position 7 unexpected 'INT'.
syntax error line 3 at position 11 unexpected 'PUBLIC'.
ALL の表示¶
ERRORS と SGA を除く、すべての SHOW オプションの設定をアルファベット順にリストします。
SnowCLI で可能なすべてのオプションを表示するには、!options
コマンドを実行します。
Oracle¶
show all;
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
SnowSQL (CLI クライアント)¶
!options
+-----------------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
| 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 |
+-----------------------------------+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
既知の問題¶
1.SnowCLI では、単一のオプションの値を表示することはできません。
SnowCLI は、特定のオプションの値を表示する方法を提供しません。!options
を使ってオプションの値を見ることができます。
2.SQLPLUS の各オプションを SnowflakeCLI に相当するものと一致させるための研究が保留中です。
SQLPLUS の各オプションに相当するものを定義することは保留中です。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
スプール¶
警告
このコマンドの変換は保留中です
説明¶
SPOOL
コマンドはクエリ結果をファイルに格納し、またはオプションでファイルをプリンターに送信します。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
SPO[OL] [file_name[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]
!spool [<file_name>] | [off]
1.オプションなしのスプール¶
このケースは機能的に等価です。
SPOOL
コマンドにオプションが何も付いていない場合、デフォルトでは、指定した名前と拡張子を持つ新規ファイルが作成されます。SPOOL
コマンドは!spool
コマンドに置き換えられます。
Oracle
SPOOL temp
SPOOL temp.txt
SnowSQL (CLI Client)
!spool temp
!spool temp.txt
2.書き込みオプション付きスプール
警告
このケースは機能的に等価ではありません。
Oracleでは、 SPOOL
コマンドでファイルに書き込む際に、3つのタイプのオプションを使用することができます。 CREATE と APPEND オプションは、それぞれゼロから書き込むためのファイルを作成し、既存のファイルの最後にテキストを連結します(存在しない場合は新規に作成します)。Snowflakeはこれらのオプションをサポートしていませんが、デフォルトの動作はファイルを作成し、ファイルが存在すればその中のテキストを連結します。一方、 REPLACE オプションは、特定のファイルに既存の内容を置き換えて書き込みます。Snowflakeでこの動作をシミュレートするには、次のコードのように、書き込みを行いたいファイルを削除し、再度書き込みを開始することをお勧めします。
Oracle¶
SPOOL temp.txt CREATE
SPOOL temp.txt APPEND
SPOOL temp.txt REPLACE
SnowSQL (CLI クライアント)¶
!spool temp.txt
!spool temp.txt
!system del temp.txt
!spool temp.txt
3.スプールをオフにする¶
このケースは機能的に等価です。
Oracleには、結果のスプールをオフにするための2つのオプション、 OFF と OUT があります。2つ目のオプションは、コンピューターの標準(デフォルト)プリンターにもファイルを送信するという違いがありますが、どちらもローリングを停止するためのものです。このオプションはオペレーティングシステムによっては利用できません。Snowflakeには、結果のスプールをオフにするオプションしかありません
Oracle
SPOOL OFF
SPOOL OUT
SnowSQL (CLI Client)
!spool off
!spool off
Known Issues
既知の問題はありません。
Related EWIs
関連 EWIs はありません。
開始
警告
このコマンドの変換は保留中です
説明¶
START
コマンドは、指定したスクリプトの SQL*Plusステートメントを実行します。このスクリプトは、ローカルファイルシステムかWebサーバーから呼び出すことができます。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
STA[RT] {url | file_name[.ext] } [arg...]
!(load | source) {url | file_name[.ext] }
Snowflake!source
と!load
コマンドは同等です。
1.単純なスタート¶
START
コマンドは!load
コマンドに置き換えられます。
このケースは機能的に等価です。
Oracle
START C:\Users\My_User\Desktop\My\Path\insert_script.sql
SnowSQL (CLI Client)
!load C:\Users\My_User\Desktop\My\Path\insert_script.sql
2.引数からスタート
Oracle
START C:\Users\My_User\Desktop\My\Path\insert_script.sql 123 456 789
SnowSQL (CLI Client)
!load C:\Users\My_User\Desktop\My\Path\insert_script.sql
警告
スクリプト引数は現在、 SnowSQL (CLI クライアント)ではサポートされていません。
既知の問題¶
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
関連 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]}
Snowflakeはこのコマンドの使用をサポートしておらず、その機能に類似したものもありません。変換時には、 EWI が追加されます。
1.Whenever oserrorコマンド¶
Oracle¶
WHENEVER OSERROR EXIT
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER OSERROR EXIT;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。
Whenever sqlerror¶
警告
このコマンドの変換は保留中です
説明¶
WHENEVER SQLERROR
コマンドは、 SQL コマンドまたは PL/SQL ブロックがエラーを発生させたときに、指定したアクションを実行します(デフォルトでは SQL*Plusを終了します)。(Oracle SQL Plusユーザーズガイドおよびリファレンス)
WHENEVER SQLERROR {EXIT [SUCCESS | FAILURE | WARNING | n | variable | :BindVariable] [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}
Snowflakeはこのコマンドの使用をサポートしておらず、その機能に類似したものもありません。変換時には、 EWI が追加されます。
1.Whenever sqlerrorコマンド¶
Oracle¶
WHENEVER SQLERROR EXIT
SnowSQL (CLI クライアント)¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER SQLERROR EXIT;
既知の問題¶
既知の問題はありません。
関連 EWIs¶
SSC-EWI-0073: 機能同等性レビュー保留中。