Résumé : dans ce tutoriel, vous apprendrez à utiliser la déclaration BEGIN...END
pour envelopper un ensemble de déclarations Transact-SQL dans un bloc de déclarations.
Vue d’ensemble de la déclaration BEGIN…END
La déclaration BEGIN...END
est utilisée pour définir un bloc de déclarations. Un bloc d’instructions est constitué d’un ensemble d’instructions SQL qui s’exécutent ensemble. Un bloc d’instructions est également appelé un lot.
En d’autres termes, si les instructions sont des phrases, l’instruction BEGIN...END
permet de définir des paragraphes.
L’exemple suivant illustre la syntaxe de l’instruction BEGIN...END
:
Code language: SQL (Structured Query Language) (sql)
Dans cette syntaxe, vous placez un ensemble d’instructions SQL entre les mots-clés BEGIN
et END
, par exemple :
Code language: SQL (Structured Query Language) (sql)
Sortie:
Pour visualiser les messages générés par l’instruction PRINT
, dans SQL Server Management Studio, vous devez cliquer sur l’onglet Messages
. Par défaut, l’onglet Messages est masqué.
Dans cet exemple :
- Premièrement, nous avons un bloc commençant par le mot clé
BEGIN
et se terminant par le mot cléEND
. - Deuxièmement, à l’intérieur du bloc, nous avons une instruction
SELECT
qui trouve les produits dont les prix catalogue sont supérieurs à 100 000. Ensuite, nous avons l’instructionIF
pour vérifier si la requête renvoie un produit et imprimer un message si aucun produit ne revient.
Notez que le @@ROWCOUNT
est une variable système qui renvoie le nombre de lignes affectées par la dernière instruction précédente.
L’instruction BEGIN... END
limite un bloc logique d’instructions SQL. On utilise souvent le BEGIN...END
au début et à la fin d’une procédure stockée et d’une fonction. Mais il n’est pas strictement nécessaire.
En revanche, le BEGIN...END
est nécessaire pour les instructions IF ELSE
, WHILE
, etc. où vous devez envelopper plusieurs instructions.
Nesting BEGIN…. END
Le bloc d’instructions peut être imbriqué. Cela signifie simplement que vous pouvez placer une déclaration BEGIN...END
à l’intérieur d’une autre déclaration BEGIN... END
.
Considérez l’exemple suivant :
Code language: SQL (Structured Query Language) (sql)
Dans cet exemple, nous avons utilisé la déclaration BEGIN...END
pour envelopper l’ensemble du bloc de déclarations. À l’intérieur de ce bloc, nous avons également utilisé l’instruction BEGIN...END
pour l’instruction IF...ELSE
.
Dans ce tutoriel, vous avez appris l’instruction BEGIN...END
de SQL Server pour envelopper les instructions Transact-SQL dans des blocs.