FORMATMESSAGE mit Nachrichtenzeichenfolge
Jedes Mal, wenn du in deinem Laden ein Bike verkaufst, musst du prüfen, ob genug Bestand vorhanden ist. Du bereitest ein Skript vor, das das prüft und einen Fehler wirft, wenn der Bestand nicht ausreicht.
Diese Übung ist Teil des Kurses
Transaktionen und Fehlerbehandlung in SQL Server
Anleitung zur Übung
- Setze
@sold_bikesauf einen Wert, der größer ist als@current_stock(z. B. 100). - Passe die Fehlermeldung mit
FORMATMESSAGEan. Verwende den Text 'There are not enough %s bikes. You have %d in stock.' als ersten Parameter,@product_nameals zweiten Parameter und@current_stockals dritten Parameter. - Übergebe der
THROW-Anweisung die Variable@my_messageund klicke auf Code ausführen (nicht Run Solution). Du wirst den Fehler sehen. - Setze
@sold_bikesin derDECLARE-Anweisung wieder auf 10. Führe den Code ohne Fehler aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
DECLARE @product_name AS NVARCHAR(50) = 'Trek CrossRip+ - 2018';
-- Set the number of sold bikes
DECLARE @sold_bikes AS INT = ___;
DECLARE @current_stock INT;
SELECT @current_stock = stock FROM products WHERE product_name = @product_name;
DECLARE @my_message NVARCHAR(500) =
-- Customize the error message
FORMATMESSAGE(___, ___, ___);
IF (@current_stock - @sold_bikes < 0)
-- Throw the error
THROW 50000, ___, 1;