SnowConvert AI - Oracle - SQL*Plus¶
Esta é uma referência de tradução para converter instruções SQL Plus para SnowSQL (cliente CLI)
Aceitar¶
Aviso
A transformação para esse comando está pendente
Descrição¶
Lê uma linha de entrada e a armazena em uma determinada variável de substituição. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
ACC[EPT] variable [NUM[BER] | CHAR | DATE | BINARY_FLOAT | BINARY_DOUBLE] [FOR[MAT] format] [DEF[AULT] default] [PROMPT text|NOPR[OMPT]] [HIDE]
O Snowflake não tem um equivalente direto a esse comando. Para emular essa funcionalidade, o comando SnowCLI!system será usado, aproveitando os recursos do sistema para as operações de entrada.
1. Accept command¶
Oracle¶
Comando¶
ACCEPT variable_name CHAR PROMPT 'Enter the variable value >'
SnowSQL (cliente CLI)¶
Comando¶
!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
Aviso
Observe que essa abordagem só se aplica a MacOs e Linux. Se quiser executar essas consultas no Windows, você pode precisar de um terminal que suporte a linguagem de script bash do Linux.
Problemas conhecidos¶
Nenhum problema conhecido.
Append¶
Aviso
A transformação para esse comando está pendente
Descrição¶
Adiciona o texto especificado ao final da linha atual no buffer SQL. (Guia do Usuário e Referência do Oracle SQL Plus)
Sintaxe do Oracle¶
A[PPEND] text
O Snowflake não tem um equivalente direto a esse comando. O comando Snowflake !edit pode ser usado para editar a última consulta usando um editor de texto predefinido. Embora essa abordagem não abranja todas as funcionalidades de APPPEND, ela é uma alternativa.
1. Append command¶
Oracle¶
Comando¶
APPEND SOME TEXT
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'APPEND STATEMENT' NODE ***/!!!
APPEND SOME TEXT;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Archive Log¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
ARCHIVE LOGexibe informações sobre arquivos de registro de refazer. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
ARCHIVE LOG LIST
O Snowflake não tem um equivalente direto a esse comando. O comando Snowflake !options pode ser usado para exibir o caminho do local de alguns arquivos de registro; no entanto, ele não está totalmente em conformidade com o comportamento esperado pelo comando ARCHIVE LOG. No momento da transformação, um EWI será adicionado.
1. Archive Log command¶
Oracle¶
Comando¶
ARCHIVE LOG LIST
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'ARCHIVE LOG STATEMENT' NODE ***/!!!
ARCHIVE LOG LIST;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Atributo¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
ATTRIBUTEespecifica as características de exibição de um determinado atributo de uma coluna Object Type. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
ATTR[IBUTE] [type_name.attribute_name [option ...]]
O Snowflake não tem um equivalente direto a esse comando.
1. Attribute command¶
Oracle¶
Comando¶
ATTRIBUTE Address.street_address FORMAT A10
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'ATTRIBUTE STATEMENT' NODE ***/!!!
ATTRIBUTE Address.street_address FORMAT A10;
Aviso
O código para o EWI ainda não está definido.
Problemas conhecidos¶
1. O SnowSQL pode definir o formato de uma coluna
Atualmente, o SnowSQL não oferece suporte a tipos personalizados nem tem um comando para formatar colunas. No entanto, você pode usar a seguinte solução alternativa para formatar colunas no resultado da consulta:
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');
Essa solução alternativa deve considerar uma estratégia adicional para desativar quando, no Oracle, o comando ATTRIBUTE receber a opção OFF.
EWIs relacionados¶
Sem EWIs relacionados.
Break¶
Aviso
A transformação para esse comando está pendente
Descrição¶
Especifica onde as alterações ocorrem em um relatório e a ação de formatação a ser executada. (Guia do Usuário e Referência do Oracle SQL Plus)
Sintaxe do Oracle¶
BRE[AK] [ON report_element [action [action]]] ...
report_element := {column|expr|ROW|REPORT}
action := [SKI[P] n|[SKI[P]] PAGE] [NODUP[LICATES]|DUP[LICATES]]
O Snowflake não oferece suporte ao uso desse comando e não tem nenhum que possa se assemelhar à sua funcionalidade. No momento da transformação, um EWI será adicionado.
1. BREAK command¶
Oracle¶
Comando¶
BREAK ON customer_age SKIP 5 DUPLICATES;
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BREAK STATEMENT' NODE ***/!!!
BREAK ON customer_age SKIP 5 DUPLICATES;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Btitle¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
BTITLEcoloca e formata um título especificado na parte inferior de cada página do relatório ou lista a definição atual de BTITLE. (Guia do Usuário e Referência do Oracle SQL Plus)
Sintaxe do Oracle¶
BTI[TLE] [printspec [text | variable] ...] | [ON | OFF]
O Snowflake não tem um equivalente direto a esse comando.
1. Btitle command¶
Oracle¶
Comando¶
BTITLE BOLD 'This is the banner title'
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'BTITLE STATEMENT' NODE ***/!!!
BTITLE BOLD 'This is the banner title';
Problemas conhecidos¶
1. O SnowSQL não é compatível com a exibição de cabeçalhos e rodapés personalizados na consulta
Atualmente, o SnowSQL não oferece suporte à exibição de cabeçalhos e rodapés personalizados na saída da consulta. No entanto, você pode usar a seguinte solução alternativa para exibir informações de cabeçalho e rodapé na saída da consulta:
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');
Essa solução alternativa deve considerar uma estratégia adicional para desativar quando, no Oracle, o comando BTITLE receber a opção OFF.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Mudança¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
CHANGEaltera a primeira ocorrência do texto especificado na linha atual do buffer. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
C[HANGE] sepchar old [sepchar [new [sepchar]]]
O Snowflake não tem um equivalente direto a esse comando. O comando Snowflake !edit pode ser usado para editar a última consulta usando um editor de texto predefinido. Embora essa abordagem não abranja todas as funcionalidades de CHANGE, ela é uma alternativa.
1. Change command¶
Oracle¶
Comando¶
CHANGE /old/new/
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'CHANGE STATEMENT' NODE ***/!!!
CHANGE /old/new/;
Problemas conhecidos¶
1. Cenários sem suporte
O comando CHANGE pode ser apresentado de várias maneiras, sendo que duas delas não são compatíveis com o conversor no momento, e são apresentadas a seguir:
3 WHERE col_id = 1
A inserção de um número de linha seguido de uma cadeia de caracteres substituirá a linha independentemente do texto que segue o número da linha. Esse cenário não é compatível, pois não segue a gramática do comando.
CHANGE/OLD/NEW/
Digite o texto a ser substituído seguido pelo comando sem usar espaços. Esse cenário não é compatível, pois não segue a lógica da tokenização por espaços.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Coluna¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
COLUMNespecifica os atributos de exibição de uma determinada coluna. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
COL[UMN] [{column | expr} [option ...]]
O Snowflake não oferece suporte ao uso desse comando e não tem nenhum que possa se assemelhar à sua funcionalidade. No momento da transformação, um EWI será adicionado.
1. Column command¶
O comando COLUMN sem cláusulas para listar todos os atributos de exibição de coluna atuais.
Oracle¶
Comando¶
COLUMN column_id ALIAS col_id NOPRINT
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'COLUMN STATEMENT' NODE ***/!!!
COLUMN column_id ALIAS col_id NOPRINT;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Define¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
DEFINEespecifica uma variável de usuário ou predefinida e atribui a ela um valor CHAR ou lista o valor e o tipo de variável de uma única variável ou de todas as variáveis. (Guia do Usuário e Referência do Oracle SQL Plus)
Sintaxe do Oracle¶
DEF[INE] [variable] | [variable = text]
SnowSQL (CLI Client) !define¶
!define [variable] | [variable=text]
Nota
O Snowflake recomenda não adicionar espaços em branco na instrução de atribuição de valor de variável.
1. Define with simple variable assignment¶
Dica
Esse caso é funcionalmente equivalente.
O comando DEFINE é substituído pelo comando !define.
Oracle¶
Comando¶
DEFINE column_id = test
DEFINE column_id = &column_reference
SnowSQL (cliente CLI)¶
Comando¶
!define column_id = test
!define column_id = &column_reference
Para fazer referência a uma variável definida anteriormente, & é precedido pelo nome da variável; se a variável não existir, o Oracle permite sua atribuição em tempo de execução; no entanto, o Snowflake lançaria um erro indicando a inexistência da referida variável
2. Define without variable assignments¶
Aviso
Esse caso não é funcionalmente equivalente.
Oracle¶
Comando¶
DEFINE column_id
SnowSQL (cliente CLI)¶
Comando¶
!define column_id
O comando DEFINE usado sem a instrução de atribuição é usado no Oracle para mostrar a definição da variável; por outro lado, no Snowflake, essa maneira de usar o comando DEFINE redefiniria a atribuição da variável, portanto, uma maneira de simular o comportamento apresentado no Oracle é usar o comando SELECT.
Essa solução seria mais ou menos assim:
Comando¶
select '&column_id';
Problemas conhecidos¶
1. Habilitação da substituição de variáveis
Para permitir que o SnowSQL CLI substitua os valores das variáveis, você deve definir a opção de configuração variable_substitution como true. Esse processo pode ser feito na instalação, ao iniciar uma instância de banco de dados ou executando o seguinte comando:
Comando¶
!set variable_substitution=true
2. Variáveis predefinidas
Há nove variáveis predefinidas durante a instalação do SQL*Plus. Essas variáveis podem ser usadas posteriormente pelo usuário. O cliente SnowSQL CLI tem apenas duas variáveis predefinidas __ROWCOUNT e__ SFQID.
Host¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
HOSTexecuta um comando do sistema operacional sem sair do SQL*Plus. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
HO[ST] [command]
SnowSQL (CLI Client) !system¶
!system <command>
1. Set with simple variable assignment¶
Dica
Esse caso é funcionalmente equivalente.
O comando HOST é substituído pelo comando !system.
Oracle¶
Comando¶
HOST dir *.sql
SnowSQL (cliente CLI)¶
Comando¶
!system dir *.sql
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
Sem EWIs relacionados.
Prompt¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
PROMPTenvia a mensagem especificada ou uma linha em branco para a tela do usuário. Se o usuário omitir um texto,PROMPTexibirá uma linha em branco na tela do usuário. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
PRO[MPT] [text]
SnowSQL (CLI Client) !print¶
!print [text]
1. Simple print¶
O comando PROMPT é substituído pelo comando !print.
Dica
Esse caso é funcionalmente equivalente.
Oracle¶
Comando¶
PROMPT
PROMPT text
PROMPT db_link_name = "&1"
SnowSQL (cliente CLI)¶
Comando¶
!print
!print text
!print db_link_name = "&1"
Problemas conhecidos¶
Nenhum problema conhecido
EWIs relacionados¶
Sem EWIs relacionados.
Remark¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
REMARKinicia um comentário em um script. O SQL*Plus não interpreta o comentário como um comando. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
REM[ARK] comment
O Snowflake não tem um equivalente direto para esse comando. No entanto, algumas de suas funcionalidades podem ser emuladas.
1. Remark after the first line¶
Dica
Esse caso é funcionalmente equivalente.
Quando o comando REMARK não estiver no início de um script, você poderá usar os marcadores de comentário padrão SQL e hífens duplos.
Oracle¶
Comando¶
SELECT 'hello world' FROM dual;
REMARK and now exit the session
EXIT;
SnowSQL (cliente CLI)¶
Comando¶
select 'hello world';
-- and now exit the session
!exit
2. Remark on the first line¶
Aviso
Esse caso não é funcionalmente equivalente.
Quando o comando REMARK está no início de um script, podem aparecer cenários como o seguinte:
Caso 1: A próxima linha é uma consulta e, nesse caso, a conversão para Snowflake do comando REMARK é bem-sucedida.
Caso 2: A próxima linha é outro comando do SQL*Plus e, nesse caso, a conversão não pode ser realizada, pois o Snowflake não é capaz de executar nenhum dos dois comandos (isso também se aplica ao cenário em que há apenas uma instrução na instrução de script que corresponde ao comando REMARK).
Abaixo estão alguns exemplos, em que os dois primeiros não puderam ser convertidos corretamente.
Oracle¶
Comando¶
REMARK single line
REMARK first line
HOST dir *.sql
REMARK first line
SELECT 'hello world' FROM dual;
SnowSQL (cliente CLI)¶
Comando¶
!!!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;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Definir¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
SETdefine uma variável de sistema para alterar as configurações de ambiente do SQL*Plus para sua sessão atual. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
SET system_variable value
SnowSQL (CLI Client) !set¶
!set <option>=<value>
Nota
O Snowflake recomenda não adicionar espaços em branco na instrução de atribuição de valor de variável.
1. Set with simple variable assignment¶
Dica
Esse caso é funcionalmente equivalente.
O comando SET é substituído pelo comando !set.
Oracle¶
Comando¶
SET wrap on
SnowSQL (cliente CLI)¶
Comando¶
!set wrap=true
2. Define without variable assignments¶
Aviso
Esse caso não é funcionalmente equivalente.
O Oracle permite ignorar a regra de valor-chave para atribuir valores a variáveis de sistema com um domínio numérico, atribuindo o valor 0 por padrão nesses casos. No Snowflake, isso não é permitido, portanto, uma alternativa é definir explicitamente o valor 0 para a referida variável.
Oracle¶
Comando¶
SET pagesize
SnowSQL (cliente CLI)¶
Comando¶
!set rowset_size=0
Problemas conhecidos¶
1. Variáveis predefinidas
O comando SET funciona apenas para variáveis do sistema, que podem diferir em quantidade, nome ou domínio entre as duas linguagens, portanto, é necessário analisar a variável que está sendo usada no comando para encontrar sua equivalência correta no Snowflake. Para ver a lista de variáveis do sistema no Oracle, você pode usar o comando SHOW ALL, enquanto no Snowflake pode usar !options.
EWIs relacionados¶
Sem EWIs relacionados.
Show¶
Aviso
A transformação para esse comando está pendente
Descrição¶
Mostra o valor de uma variável de sistema SQLPlus ou o ambiente SQLPlus atual. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
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
O Snowflake não tem um equivalente direto para esse comando. No entanto, algumas de suas funcionalidades podem ser emuladas.
1. Show ERRORS¶
Mostra os erros de compilação de um procedimento armazenado (inclui funções, procedimentos e pacotes armazenados). Depois que você usar o comando CREATE para criar um procedimento armazenado, será exibida uma mensagem se o procedimento armazenado tiver algum erro de compilação.
No Snowflake, não é necessário executar uma instrução extra para exibir todos os erros de compilação. Os erros de compilação são exibidos imediatamente ao executar a instrução CREATE.
Oracle¶
Comando¶
CREATE OR REPLACE PROCEDURE RANCOM_PROC
AS
BEGIN
INSERT INTO NE_TABLE SELECT 1 FROM DUAL;
END;
SHOW ERRORS
Resultado¶
LINE/COL ERROR
-------- -----------------------------------------------------------------
4/3 PL/SQL: SQL Statement ignored
4/10 PL/SQL: ORA-00925: missing INTO keyword
Nota
Observe que a palavra-chave INTO foi escrita incorretamente para causar um erro de compilação.
SnowSQL (cliente CLI)¶
Comando¶
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;
Resultado¶
001003 (42000): SQL compilation error:
syntax error line 3 at position 7 unexpected 'INT'.
syntax error line 3 at position 11 unexpected 'PUBLIC'.
Show ALL¶
Lista as configurações de todas as opções de SHOW, exceto ERRORS e SGA, em ordem alfabética.
Para exibir todas as opções possíveis no SnowCLI, você pode executar o comando !options.
Oracle¶
Comando¶
show all;
Resultado¶
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 (cliente CLI)¶
Comando¶
!options
Resultado¶
Nome |
Valor |
Ajuda |
|---|---|---|
auto_completion |
True |
Exibe sugestões de preenchimento automático para comandos e objetos Snowflake |
client_session_keep_alive |
False |
Mantém a sessão ativa indefinidamente, mesmo que não haja atividade do usuário. |
client_store_temporary_credential |
False |
Permitir que usuários do Linux usem arquivos temporários para armazenar ID_TOKEN. |
connection_options |
{} |
Defina parâmetros de conexão arbitrários nas conexões do conector Python subjacentes. |
echo |
False |
Emite o comando SQL para o terminal quando ele é executado |
editor |
vim |
Altera o editor a ser usado para o comando !edit |
empty_for_null_in_tsv |
False |
Emite uma cadeia de caracteres vazia para valores NULL em formato TSV |
environment_variables |
[] |
Especifica as variáveis de ambiente a serem definidas nas variáveis do SnowSQL. |
Os nomes das variáveis devem ser separados por vírgulas. |
||
execution_only |
False |
Executa apenas consultas. Nenhum dado será buscado |
exit_on_error |
False |
Encerrado quando o SnowSQL encontra um erro |
fix_parameter_precedence |
True |
Corrija a precedência do parâmetro de conexão na ordem de 1) Variáveis de ambiente, 2) Parâmetros de conexão, 3) Parâmetros de conexão padrão. |
force_put_overwrite |
False |
Força OVERWRITE=true para PUT. Isso visa mitigar o problema de consistência eventual do S3. |
friendly |
True |
Mostra o texto inicial e as mensagens de despedida |
header |
True |
Saída do cabeçalho nos resultados da consulta |
insecure_mode |
False |
Desliga verificações de certificado OSCP |
key_bindings |
emacs |
Altera as vinculações de teclas para navegar no prompt para emacs ou vi |
log_bootstrap_file |
../snowsql_rt.log_bo.. |
Localização do arquivo de log Bootstrap do SnowSQL |
log_file |
../snowsql_rt.log |
Localização do arquivo de log principal do SnowSQL |
log_level |
DEBUG |
Altera o nível de log ( crítico, depuração, informação, erro, aviso) |
login_timeout |
120 |
Tempo limite para login em segundos. |
noup |
False |
Desativa a atualização automática do Snowsql |
ocsp_fail_open |
True |
Define o modo de falha aberta para falhas OCSP. Para obter ajuda, consulte a documentação. |
output_file |
Nenhum |
Grava a saída no arquivo especificado, além do terminal. |
output_format |
psql |
Define o formato de saída para os resultados da consulta. |
paginação |
False |
Permite a paginação pausar a saída pela altura da tela. |
progress_bar |
True |
Mostra a barra de progresso durante a transferência de dados. |
prompt_format |
[user]#[warehouse]@[.. |
Define o formato do prompt. Para obter ajuda, consulte a documentação. |
quiet |
False |
Oculta toda a saída |
remove_comments |
False |
Remove comentários antes de enviar a consulta ao Snowflake |
remove_trailing_semicolons |
False |
Remove os ponto-e-vírgula finais do texto SQL antes de enviar as consultas para o Snowflake |
resultados |
True |
Se definido como desativado, as consultas serão enviadas de forma assíncrona, mas nenhum resultado será obtido. |
Use as consultas para verificar o status. |
||
rowset_size |
1000 |
Define o tamanho dos conjuntos de linhas a serem obtidos do servidor. |
Defina a opção como baixa para uma saída fluida e alta para uma saída rápida. |
||
sfqid |
False |
Ativa/desativa a ID de consulta do Snowflake no resumo. |
sfqid_in_error |
False |
Ativa/desativa o ID de consulta do Snowflake na mensagem de erro |
sql_delimiter |
; |
Define quais palavras-chave reservadas dividem instruções SQL umas das outras. |
sql_split |
snowflake.connector… |
Escolha a implementação de divisor SQL. Atualmente, snowflake.connector.util_text ou snowflake.cli.sqlsplit. |
stop_on_error |
False |
Para todas as consultas ainda a serem executadas quando o SnowSQL encontra um erro |
syntax_style |
padrão |
Define as cores para o texto do SnowSQL. |
momento |
True |
Ativa/desativa o tempo para cada consulta |
timing_in_output_file |
False |
Inclui o tempo no arquivo de saída. |
variable_substitution |
False |
Substitui variáveis (iniciadas com “&”) por valores. |
version |
1.2.24 |
Versão do SnowSQL |
wrap |
True |
Trunca linhas na largura da tela do terminal |
———————————– |
———————— |
———————————————————————————————————————————————– |
Problemas conhecidos¶
1. Não é possível no SnowCLI exibir o valor de uma única opção.
O SnowCLI não oferece uma maneira de exibir o valor de uma opção específica. Você pode usar !options para observar o valor da opção.
2. A pesquisa está pendente para fazer a correspondência entre cada opção do SQLPLUS e um equivalente no SnowflakeCLI.
Está pendente a definição de um equivalente para cada opção do SQLPLUS.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Spool¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
SPOOLarmazena os resultados da consulta em um arquivo ou, opcionalmente, envia o arquivo para uma impressora. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
SPO[OL] [file_name[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]
SnowSQL (CLI Client) !spool¶
!spool [<file_name>] | [off]
1. Spool without options¶
Dica
Esse caso é funcionalmente equivalente.
Quando o comando SPOOL não é acompanhado de nenhuma opção, por padrão ele cria um novo arquivo com o nome e a extensão especificados. O comando SPOOL é substituído pelo comando !spool.
Oracle¶
Comando¶
SPOOL temp
SPOOL temp.txt
SnowSQL (cliente CLI)¶
Comando¶
!spool temp
!spool temp.txt
2. Spool with write options¶
Aviso
Esse caso não é funcionalmente equivalente.
O Oracle permite três tipos de opções ao gravar em um arquivo por meio do comando SPOOL. As opções CREATE e APPEND criam um arquivo para gravação a partir do zero e concatenam o texto ao final de um arquivo existente (ou criam um novo arquivo se ele não existir), respectivamente. O Snowflake não oferece suporte a essas opções; no entanto, seu comportamento padrão é criar um arquivo e, se ele existir, concatenar o texto nele contido. A opção REPLACE, por outro lado, grava no arquivo específico substituindo o conteúdo existente. Para simular esse comportamento no Snowflake, é recomendável excluir o arquivo em que você deseja gravar e começar a gravar novamente, conforme mostrado no código a seguir
Oracle¶
Comando¶
SPOOL temp.txt CREATE
SPOOL temp.txt APPEND
SPOOL temp.txt REPLACE
SnowSQL (cliente CLI)¶
Comando¶
!spool temp.txt
!spool temp.txt
!system del temp.txt
!spool temp.txt
3. Spool turn off¶
Dica
Esse caso é funcionalmente equivalente.
O Oracle tem duas opções para desativar o spooling de resultados: OFF e OUT. Ambas têm o objetivo de interromper a rolagem, com a diferença de que a segunda também envia o arquivo para a impressora padrão do computador. Essa opção não está disponível em alguns sistemas operacionais. O Snowflake só tem a opção de desativar o spool de resultados
Oracle¶
Comando¶
SPOOL OFF
SPOOL OUT
SnowSQL (cliente CLI)¶
Comando¶
!spool off
!spool off
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
Sem EWIs relacionados.
Início¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
STARTexecuta as instruções SQL*Plus no script especificado. O script pode ser chamado a partir do sistema de arquivos local ou de um servidor da Web. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
STA[RT] {url | file_name[.ext] } [arg...]
SnowSQL (CLI Client) !load¶
!(load | source) {url | file_name[.ext] }
1. Simple start¶
O comando START é substituído pelo comando !load.
Dica
Esse caso é funcionalmente equivalente.
Oracle¶
Comando¶
START C:\Users\My_User\Desktop\My\Path\insert_script.sql
SnowSQL (cliente CLI)¶
Comando¶
!load C:\Users\My_User\Desktop\My\Path\insert_script.sql
2. Start with arguments¶
Oracle¶
Comando¶
START C:\Users\My_User\Desktop\My\Path\insert_script.sql 123 456 789
SnowSQL (cliente CLI)¶
Comando¶
!load C:\Users\My_User\Desktop\My\Path\insert_script.sql
Aviso
No momento, os argumentos de script não são compatíveis com o SnowSQL (cliente CLI).
Problemas conhecidos¶
1. Os argumentos não são compatíveis com o cliente SnowSQL CLI
O Oracle pode passar vários argumentos para um script e pode ser acessado com &1, &2 e assim por diante, mas isso não pode ser feito no Cliente SnowSQL CLI. Você pode simular argumentos declarando variáveis com o comando !define. Lembre-se de que esses valores são definidos globalmente para todos os scripts, portanto, o comportamento pode não ser equivalente.
Essa solução alternativa seria mais ou menos assim:
!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 relacionados¶
Sem EWIs relacionados.
Whenever oserror¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
WHENEVER OSERRORexecuta a ação especificada (encerra o SQL*Plus por padrão) se ocorrer um erro no sistema operacional. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
WHENEVER OSERROR {EXIT [SUCCESS | FAILURE | n | variable | :BindVariable] [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}
O Snowflake não oferece suporte ao uso desse comando e não tem nenhum que possa se assemelhar à sua funcionalidade. No momento da transformação, um EWI será adicionado.
1. Whenever oserror command¶
Oracle¶
Comando¶
WHENEVER OSERROR EXIT
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER OSERROR EXIT;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.
Whenever sqlerror¶
Aviso
A transformação para esse comando está pendente
Descrição¶
O comando
WHENEVER SQLERRORexecuta a ação especificada (sai do SQL*Plus por padrão) se um comando SQL ou um bloco PL/SQL gerar um erro. (Guia do usuário e referência do Oracle SQL Plus)
Sintaxe do Oracle¶
WHENEVER SQLERROR {EXIT [SUCCESS | FAILURE | WARNING | n | variable | :BindVariable] [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}
O Snowflake não oferece suporte ao uso desse comando e não tem nenhum que possa se assemelhar à sua funcionalidade. No momento da transformação, um EWI será adicionado.
1. Whenever sqlerror command¶
Oracle¶
Comando¶
WHENEVER SQLERROR EXIT
SnowSQL (cliente CLI)¶
Comando¶
!!!RESOLVE EWI!!! /*** SSC-EWI-0073 - PENDING FUNCTIONAL EQUIVALENCE REVIEW FOR 'WHENEVER ERROR STATEMENT' NODE ***/!!!
WHENEVER SQLERROR EXIT;
Problemas conhecidos¶
Nenhum problema conhecido.
EWIs relacionados¶
SSC-EWI-0073: Revisão de equivalência funcional pendente.