Aan de slagGa gratis aan de slag

THROW zonder parameters

Je wilt een stored procedure voorbereiden om nieuwe producten in de database in te voegen. In die stored procedure wil je de mogelijke fouten in een tabel met de naam errors opslaan en daarna de oorspronkelijke fout opnieuw gooien.

Hoe bereid je de stored procedure voor?

Deze oefening maakt deel uit van de cursus

Transacties en foutafhandeling in SQL Server

Cursus bekijken

Oefeninstructies

  • Plaats de foutafhandeling in een CATCH-blok.
  • Voeg de fout toe aan de tabel errors.
  • Sluit de INSERT-instructie af met een puntkomma (;).
  • Gooi de oorspronkelijke fout opnieuw.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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
	___; 
___ ___
Code bewerken en uitvoeren