FORMATMESSAGE con cadena de mensaje
Cada vez que vendes una bici en tu tienda, tienes que comprobar si hay stock suficiente. Preparas un script para comprobarlo y lanzar un error si no hay suficiente stock.
Este ejercicio forma parte del curso
Transacciones y control de errores en SQL Server
Instrucciones del ejercicio
- Asigna a
@sold_bikesun valor mayor que@current_stock(p. ej., 100). - Personaliza el error usando
FORMATMESSAGEcon el texto 'There are not enough %s bikes. You have %d in stock.' como primer parámetro,@product_namecomo segundo parámetro y@current_stockcomo tercer parámetro. - Pasa a la sentencia
THROWla variable@my_messagey haz clic en Ejecutar código (no Run Solution). Verás el error. - Vuelve a establecer
@sold_bikesen la sentenciaDECLAREa 10. Ejecuta el código sin errores.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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;