SnowConvert: SQL Server

O que é o SnowConvert para o SQL Server?

O SnowConvert é um software que entende os scripts do SQL Server e converte esse código-fonte em código Snowflake funcionalmente equivalente.

Tipos de conversão

Especificamente, o SnowConvert para SQL Server realiza as seguintes conversões:

SQL Server para Snowflake SQL

O SnowConvert compreende o código-fonte do SQL Server e converte a linguagem de definição de dados (DDL), a linguagem de manipulação de dados (DML) e as funções no código-fonte para o SQL correspondente no destino: Snowflake.

Código da amostra

Código de entrada básico do SQL Server:

CREATE TABLE Persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);
Copy

Código de saída Snowflake SQL:

CREATE OR REPLACE TABLE Persons (
    PersonID INT,
    LastName VARCHAR(255),
    FirstName VARCHAR(255),
    Address VARCHAR(255),
    City VARCHAR(255)
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"transact"}}'
;
Copy

Como você pode ver, a maior parte da estrutura permanece a mesma. Há alguns casos em que os tipos de dados precisam ser transformados, por exemplo.

Procedimentos armazenados do SQL Server para JavaScript incorporados no Snowflake SQL

O SnowConvert o senhor pega os procedimentos armazenados do SQL Server e os converte em JavaScript incorporados ao Snowflake SQL. O CREATE PROCEDURE do SQL Server é substituído pelo CREATE OR REPLACE PROCEDURE do Snowflake. O JavaScript é chamado de linguagem de script, e todas as instruções internas são convertidas para JavaScript.

Código da amostra

Procedimento armazenado básico do SQL Server:

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
Copy

Código de saída Snowflake SQL, com JavaScript incorporado:

-- Additional Params: -t JavaScript
CREATE OR REPLACE PROCEDURE SelectAllCustomers ()
RETURNS STRING
LANGUAGE JAVASCRIPT
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
EXECUTE AS CALLER
AS
$$
   // REGION SnowConvert Helpers Code
   // END REGION

EXEC(`SELECT
   *
FROM
   Customers`);
$$;

!!!RESOLVE EWI!!! /*** SSC-EWI-0040 - THE STATEMENT IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
;
Copy
  • Ao criar o código JavaScript, há uma parte do código adicionada como um helper, necessária para facilitar a transformação do conteúdo do procedimento.

  • Você pode esperar ver avisos com um código associado para ajudá-lo a descobrir o que está acontecendo no código convertido. (Consulte problemas e resolução de problemas)

Terminologia do SnowConvert

Antes de nos perdermos na mágica dessas conversões de código, aqui estão alguns termos/definições para que você saiba o que queremos dizer quando começarmos a usá-los em toda a documentação:

  • SQL (Structured Query Language): a linguagem padrão para armazenar, manipular e recuperar dados na maioria das arquiteturas modernas de banco de dados.

  • SnowConvert: o software que converte de forma segura e automática seus arquivos SQL Server para a plataforma de dados em nuvem Snowflake.

  • Conversion rule ou transformation rule: regras que permitem que o SnowConvert converta de uma parte do código-fonte para o código-alvo esperado.

  • Parse: A análise é um processo inicial realizado pelo SnowConvert para entender o código-fonte e criar uma estrutura de dados interna necessária para executar as regras de conversão.

Nas próximas páginas, você saberá mais sobre os tipos de conversões que o SnowConvert para SQL Server é capaz de fazer. Se estiver pronto para começar, visite a página Introdução nesta documentação.