Partilhar via


Atribuir variáveis para pools SQL dedicados no Azure Synapse Analytics

Neste artigo, você encontrará dicas essenciais para atribuir variáveis T-SQL no pool SQL dedicado.

Definir variáveis com DECLARE

As variáveis no pool SQL dedicado são definidas usando a DECLARE instrução ou a SET instrução. Inicializar variáveis com DECLARE é uma das maneiras mais flexíveis de definir um valor de variável no pool SQL.

DECLARE @v  int = 0
;

Você também pode usar DECLARE para definir mais de uma variável de cada vez. Não é possível usar SELECT ou UPDATE para fazer o seguinte:

DECLARE @v  INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Smith')
,       @v1 INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Jones')
;

Não é possível inicializar e usar uma variável na mesma instrução DECLARE . Para ilustrar este ponto, o exemplo seguinte não é permitido, pois @p1 é inicializado e usado na mesma instrução DECLARAR. Como tal, o exemplo a seguir apresenta um erro:

DECLARE @p1 int = 0
,       @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;

Definir valores com SET

SET é um método comum para definir uma única variável.

As instruções a seguir são todas maneiras válidas de definir uma variável com SET:

SET     @v = (Select max(database_id) from sys.databases);
SET     @v = 1;
SET     @v = @v+1;
SET     @v +=1;

Você só pode definir uma variável de cada vez com SET. No entanto, operadores compostos são permitidos.

Limitações

Não é possível usar UPDATE para atribuição de variáveis.

Próximos passos

Para obter mais dicas de desenvolvimento, consulte Visão geral do desenvolvimento.