오류를 던지는 저장 프로시저 실행하기
가격이 $499.99인 Trek Conduit+ 자전거 3대를 입고 처리하려고 해요.
products 테이블에 Trek Conduit+ 이(가) 없다고 판단해서, 이전 연습 문제에서 만든 저장 프로시저를 사용해 새 제품으로 추가하려고 합니다:
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
BEGIN CATCH
INSERT INTO errors VALUES ('Error inserting a product');
THROW;
END CATCH
저장 프로시저 실행 중 발생할 수 있는 오류를 잡아서, 원래의 오류 메시지를 보여줘야 합니다.
스크립트를 어떻게 준비하면 될까요?
이 연습은 강의의 일부입니다
SQL Server에서의 트랜잭션과 오류 처리
연습 안내
insert_product라는 저장 프로시저를 실행하세요.- 저장 프로시저 매개변수에 알맞은 값을 설정하세요.
- 오류 처리를
CATCH블록으로 감싸세요. - 오류 메시지를 선택하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
BEGIN TRY
-- Execute the stored procedure
EXEC ___
-- Set the values for the parameters
@product_name = 'Trek Conduit+',
@stock = ___,
@price = ___;
END TRY
-- Set up the CATCH block
___ ___
-- Select the error message
SELECT ___;
___ ___