开始使用免费开始使用

使用消息字符串的 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 语句,然后点击 运行代码不要 Run Solution)。您将看到该错误。
  • DECLARE 语句中将 @sold_bikes 改回 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;
编辑并运行代码