НачатьНачать бесплатно

FORMATMESSAGE с текстом сообщения

Каждый раз при продаже велосипеда вам нужно проверять, достаточно ли товара на складе. Подготовьте скрипт для такой проверки, который будет выдавать ошибку при нехватке товара.

Это упражнение является частью курса

Транзакции и обработка ошибок в SQL Server

Посмотреть курс

Инструкции к упражнению

  • Присвойте переменной @sold_bikes значение, превышающее @current_stock (например, 100).
  • Настройте сообщение об ошибке с помощью FORMATMESSAGE, передав текст 'There are not enough %s bikes. You have %d in stock.' в качестве первого параметра, @product_name — второго, а @current_stock — третьего.
  • Передайте переменную @my_message в оператор THROW и нажмите Запустить код (не «Запустить решение»). Вы увидите ошибку.
  • Верните значение @sold_bikes в операторе DECLARE обратно на 10 и запустите код без ошибок.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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;
Редактировать и запускать код