Ваш первый скрипт с обработкой ошибок
Вы заметили, что в таблице products нет ограничения для проверки данных в столбце stock. Логично предположить, что значение stock всегда должно быть больше или равно 0.
Однако в одной из строк допущена ошибка: значение stock равно -1!
| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6 | Trek Neko+ | -1 | 2799 |
Вы хотите написать скрипт, который добавит ограничение в таблицу products, допускающее только значения stock, большие или равные 0.
Если добавить такое ограничение, выполнение завершится ошибкой, поскольку в одной строке значение stock равно -1.
Как подготовить этот скрипт?
Это упражнение является частью курса
Транзакции и обработка ошибок в SQL Server
Инструкции к упражнению
- Оберните добавление ограничения в блок
TRY. - Добавьте ограничение в таблицу
products. - Оберните сообщение об ошибке в блок
CATCH.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
-- Set up the TRY block
BEGIN ___
-- Add the constraint
ALTER TABLE ___
ADD CONSTRAINT CHK_Stock CHECK (stock >= 0);
___ ___
-- Set up the CATCH block
___ ___
SELECT 'An error occurred!';
END ___