パラメーター付きの THROW
与えられた staff_id を使って、staff テーブルから該当メンバーのすべての情報を選択するスクリプトを用意してください。
SELECT 文でメンバーが見つからない場合は、THROW 文でエラーを投げます。指定された id のスタッフが存在しないことを知らせてください。
この演習はコースの一部です
SQL Server におけるトランザクションとエラー処理
演習の手順
THROW文を使い、エラー番号は 50001、メッセージは'No staff member with such id'、state は 1 にしてください。- 冒頭の
DECLARE文にある@staff_idの値を、存在しない識別子(例: '45')に置き換えて、コードを実行する(Run Solution ではない)をクリックします。エラーが表示されます。 @staff_idの値を 4 に戻し、エラーなしでコードを実行します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
DECLARE @staff_id INT = 4;
IF NOT EXISTS (SELECT * FROM staff WHERE staff_id = @staff_id)
-- Invoke the THROW statement with parameters
___ ___, '___', ___;
ELSE
SELECT * FROM staff WHERE staff_id = @staff_id