开始使用免费开始使用

您的第一个错误处理脚本

您发现 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 ___
编辑并运行代码