SnowConvert: Validação de comentários ambíguos¶
Descrição¶
Essa etapa de validação verifica se o código de entrada tem uma sequência de caracteres que pode criar comentários ambíguos (/*/
)
Se o código de entrada tiver um comentário ambíguo, será exibida uma janela com um aviso, como a seguinte:
Além disso, no relatório ScopeValidation, você encontrará informações sobre o(s) arquivo(s) com falha.
Por que é ambíguo?¶
O bloco de comentários em SQL começa com /*
e termina com */
. Quando a sequência de caracteres /*/
é usada, dependendo da linguagem de origem, ela pode iniciar um aninhamento dentro do bloco ou terminar o bloco inteiro.
Aqui está um exemplo de instruções válidas usando /*/
select col1,
/*Some comment/*/ */*/
col2,
col3
from
table1;
select col1,
/*Some comment/*/
col2,
col3
from
table1;
select col1,
/*Some comment/*/ */*/
col2,
col3
from
table1;
select col1,
/*Some comment/*/
col2,
col3
from
table1;
Como pode ver, o comentário se comporta de forma diferente no Teradata e no SQL Server do que no Oracle e no Snowflake. Mesmo no Teradata, há outro tratamento para o bteq e outras linguagens de script.
Resolvendo a ambiguidade¶
No Snowflake, se encontrar a sequência /*/ em seu código, ela normalmente encerra um comentário de bloco. No entanto, se estiver usando-o de forma diferente em seu código-fonte, certifique-se de ajustá-lo de acordo.