शुरू करेंमुफ़्त में शुरू करें

अपना खुद का TRY..CATCH

dbo.cuspRideSummaryDelete को Alter करें और उसमें एक जानबूझकर की गई त्रुटि शामिल करें ताकि हम देख सकें कि TRY CATCH ब्लॉक कैसे काम करता है.

यह अभ्यास पाठ्यक्रम का हिस्सा है

SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

पाठ्यक्रम देखें

अभ्यास निर्देश

  • @DateParm को date की जगह गलत तरीके से nvarchar(30) डेटा टाइप असाइन करें.
  • @Error को वैकल्पिक OUTPUT पैरामीटर के रूप में शामिल करें.
  • DELETE स्टेटमेंट को BEGIN TRY...END TRY ब्लॉक के भीतर रखें.
  • BEGIN CATCH...END CATCH ब्लॉक के भीतर ERROR_NUMBER(), ERROR_SEVERITY(), ERROR_STATE(), ERROR_MESSAGE(), ERROR_LINE() को concatenate करें और @Error में SET करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

-- 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;
कोड संपादित करें और चलाएँ