Bắt đầu ngayBắt đầu miễn phí

THROW không có tham số

Bạn muốn chuẩn bị một stored procedure để chèn sản phẩm mới vào cơ sở dữ liệu. Trong stored procedure đó, bạn muốn ghi lại các lỗi có thể xảy ra vào một bảng tên là errors, rồi sau đó ném lại lỗi gốc.

Bạn sẽ chuẩn bị stored procedure như thế nào?

Bài tập này là một phần của khóa học

Giao dịch và Xử lý lỗi trong SQL Server

Xem khóa học

Hướng dẫn bài tập

  • Bao quanh phần xử lý lỗi bằng khối CATCH.
  • Chèn bản ghi lỗi vào bảng errors.
  • Kết thúc câu lệnh INSERT bằng dấu chấm phẩy (;).
  • Ném lại lỗi gốc.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

CREATE PROCEDURE insert_product
  @product_name VARCHAR(50),
  @stock INT,
  @price DECIMAL

AS

BEGIN TRY
	INSERT INTO products (product_name, stock, price)
		VALUES (@product_name, @stock, @price);
END TRY
-- Set up the CATCH block
___ ___
	-- Insert the error and end the statement with a semicolon
    ___ ___ errors VALUES ('Error inserting a product')___
    -- Re-throw the error
	___; 
___ ___
Chỉnh sửa và Chạy Mã