Il tuo TRY..CATCH personale
Modifica dbo.cuspRideSummaryDelete per includere un errore intenzionale così potremo vedere come funziona il blocco TRY CATCH.
Questo esercizio fa parte del corso
Scrivere funzioni e stored procedure in SQL Server
Istruzioni dell'esercizio
- Assegna in modo errato a
@DateParmun tipo di datinvarchar(30)invece didate. - Includi
@Errorcome parametro opzionale diOUTPUT. - Includi l'istruzione
DELETEall'interno del bloccoBEGIN TRY...END TRY. - Concatena
ERROR_NUMBER(),ERROR_SEVERITY(),ERROR_STATE(),ERROR_MESSAGE(),ERROR_LINE()all'interno del bloccoBEGIN CATCH...END CATCHe faiSETdi@Error.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
-- Alter the stored procedure
CREATE OR ALTER PROCEDURE dbo.cuspRideSummaryDelete
-- (Incorrectly) specify @DateParm
___ ___(30),
-- Specify @Error
___ nvarchar(max) = NULL OUTPUT
AS
SET NOCOUNT ON
BEGIN
-- Start of the TRY block
___ ___
-- Delete
DELETE FROM RideSummary
WHERE Date = @DateParm
-- End of the TRY block
___ ___
-- Start of the CATCH block
___ ___
SET @Error =
'Error_Number: '+ CAST(___() AS VARCHAR) +
'Error_Severity: '+ CAST(___() AS VARCHAR) +
'Error_State: ' + CAST(___() AS VARCHAR) +
'Error_Message: ' + ___() +
'Error_Line: ' + CAST(___() AS VARCHAR)
-- End of the CATCH block
___ ___
END;