Partilhar via


Atribuir variáveis para conjuntos de SQL dedicados no Azure Synapse Analytics

Neste artigo, encontrará sugestões essenciais para atribuir variáveis T-SQL no conjunto de SQL dedicado.

Definir variáveis com DECLARE

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

DECLARE @v  int = 0
;

Também pode utilizar DECLARE para definir mais do que uma variável de cada vez. Não pode utilizar 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 pode inicializar e utilizar uma variável na mesma instrução DECLARE. Para ilustrar o ponto, o exemplo seguinte não é permitido, uma vez @p1 que é inicializado e utilizado na mesma instrução DECLARE. Como tal, o exemplo seguinte 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 seguintes instruções são todas formas 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;

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

Limitações

Não pode utilizar UPDATE para atribuição de variáveis.

Passos seguintes

Para obter mais sugestões de desenvolvimento, veja Descrição geral do desenvolvimento.