LoslegenKostenlos loslegen

Dein erstes Skript zur Fehlerbehandlung

Du hast festgestellt, dass in deiner Tabelle products keine Constraint vorhanden ist, die die in der Spalte stock gespeicherten Daten prüft. Es ergibt Sinn, dass stock immer größer oder gleich 0 ist. Aus irgendeinem Grund gibt es in der folgenden Zeile einen Fehler. Der Bestand ist -1!

| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6          | Trek Neko+   | -1    | 2799  |

Du möchtest ein Skript vorbereiten, das der Tabelle products eine Constraint hinzufügt, sodass nur Bestände größer oder gleich 0 erlaubt sind.

Wenn du diese Constraint hinzufügst, die nur Bestände größer oder gleich 0 zulässt, schlägt die Ausführung fehl, weil es eine Zeile gibt, in der der Bestand -1 ist.

Wie kannst du das Skript vorbereiten?

Diese Übung ist Teil des Kurses

Transaktionen und Fehlerbehandlung in SQL Server

Kurs anzeigen

Anleitung zur Übung

  • Umgib die Constraint mit einem TRY-Block.
  • Füge die Constraint zur Tabelle products hinzu.
  • Umgib die Fehlermeldung mit einem CATCH-Block.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

-- Set up the TRY block
BEGIN ___
	-- Add the constraint
	ALTER TABLE ___
		ADD CONSTRAINT CHK_Stock CHECK (stock >= 0);
___ ___
-- Set up the CATCH block
___ ___
	SELECT 'An error occurred!';
END ___
Code bearbeiten und ausführen