Summary: neste tutorial, você aprenderá como usar o comando BEGIN...END
para envolver um conjunto de comandos Transact-SQL em um bloco de comandos.
Overvisão geral do comando BEGIN…END Statement
O comando BEGIN...END
é usado para definir um bloco de comandos. Um bloco de instruções consiste em um conjunto de instruções SQL que são executadas em conjunto. Um bloco de instruções também é conhecido como um lote.
Em outras palavras, se as instruções são frases, a instrução BEGIN...END
permite que você defina parágrafos.
O seguinte ilustra a sintaxe da instrução BEGIN...END
:
Code language: SQL (Structured Query Language) (sql)
Nesta sintaxe, você coloca um conjunto de instruções SQL entre as instruções BEGIN
e END
palavras-chave, por exemplo:
Code language: SQL (Structured Query Language) (sql)
Output:
Para ver as mensagens geradas pela instrução PRINT
, no SQL Server Management Studio, você precisa clicar na aba Messages
. Por padrão, a aba Messages está oculta.
Neste exemplo:
- Primeiro, temos um bloco começando com a palavra-chave
BEGIN
e terminando com a palavra-chaveEND
>keyword. - Segundo, dentro do bloco, temos uma declaração
SELECT
que encontra produtos cujos preços de lista são maiores que 100.000. Depois, temos o comandoIF
para verificar se a consulta retorna algum produto e imprimir uma mensagem se nenhum produto retornar.
Nota que o @@ROWCOUNT
é uma variável de sistema que retorna o número de linhas afetadas pelo último comando anterior.
O comando BEGIN... END
limita um bloco lógico de comandos SQL. Usamos frequentemente o BEGIN...END
no início e no fim de um procedimento e função armazenados. Mas não é estritamente necessário.
No entanto, o BEGIN...END
é necessário para as instruções IF ELSE
, WHILE
, etc., onde é necessário envolver várias instruções.
Nesting BEGIN… END
O bloco de comandos pode ser aninhado. Isso significa simplesmente que você pode colocar uma instrução BEGIN...END
dentro de outra instrução BEGIN... END
instrução.
Consulte o seguinte exemplo:
Code language: SQL (Structured Query Language) (sql)
Neste exemplo, usamos a instrução BEGIN...END
para envolver todo o bloco de instruções. Dentro deste bloco, também usamos a instrução BEGIN...END
para a instrução IF...ELSE
.
Neste tutorial, você aprendeu sobre o SQL Server BEGIN...END
instrução para envolver instruções Transact-SQL em blocos.