Ваш перший скрипт обробки помилок
Ви з'ясували, що у вашій таблиці products немає жодного обмеження, яке перевіряє дані в стовпці stock. Логічно, щоб значення stock завжди було більше або дорівнювало 0.
З якоїсь причини в наведеному нижче рядку є помилка. Запас дорівнює -1!
| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6 | Trek Neko+ | -1 | 2799 |
Ви хочете підготувати скрипт, який додасть обмеження до таблиці products, щоб дозволяти лише значення запасів, більші або рівні 0.
Якщо ви додасте це обмеження, що дозволяє лише значення, більші або рівні 0, виконання завершиться помилкою, тому що є один рядок, де запас дорівнює -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 ___