FORMATMESSAGE avec une chaîne de message
Chaque fois que vous vendez un vélo dans votre magasin, vous devez vérifier s'il y a assez de stock. Vous préparez un script pour faire la vérification et lancer une erreur s'il n'y a pas suffisamment de stock.
Cette activité fait partie du cours
Transactions et gestion des erreurs dans SQL Server
Instructions de l’exercice
- Affectez à
@sold_bikesune valeur supérieure à@current_stock(p. ex. 100). - Personnalisez l'erreur avec
FORMATMESSAGEen utilisant le texte 'There are not enough %s bikes. You have %d in stock.' comme premier paramètre,@product_namecomme deuxième paramètre et@current_stockcomme troisième paramètre. - Passez à l'instruction
THROWla variable@my_messageet cliquez sur Exécuter le code (pas Run Solution). Vous verrez l'erreur. - Remettez
@sold_bikesà 10 dans l'instructionDECLARE. Exécutez le code sans erreurs.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
DECLARE @product_name AS NVARCHAR(50) = 'Trek CrossRip+ - 2018';
-- Set the number of sold bikes
DECLARE @sold_bikes AS INT = ___;
DECLARE @current_stock INT;
SELECT @current_stock = stock FROM products WHERE product_name = @product_name;
DECLARE @my_message NVARCHAR(500) =
-- Customize the error message
FORMATMESSAGE(___, ___, ___);
IF (@current_stock - @sold_bikes < 0)
-- Throw the error
THROW 50000, ___, 1;