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

Nested TRY...CATCH में error फंक्शन का उपयोग

आपकी स्टोर में कुछ नई इलेक्ट्रिक बाइक्स आई हैं, इसलिए आपको स्टॉक अपडेट करना है.

आप 2 Trek Powerfly 5 - 2018 बाइक्स को प्रत्येक $3499.99 की कीमत पर, और 3 New Power K- 2018 बाइक्स को प्रत्येक $1999.99 में प्राप्त होने का रिकॉर्ड दर्ज करना चाहते हैं.

आप इन्हें नए मॉडल समझकर डेटाबेस में insert करने की कोशिश करते हैं. लेकिन आप यह भूल गए कि पहली बाइक पहले से स्टॉक में है. सौभाग्य से, products टेबल में एक constraint है जो हर प्रोडक्ट नाम को यूनिक होना आवश्यक बनाता है.

आप insert करते समय संभावित errors को कंट्रोल करने वाला एक स्क्रिप्ट तैयार करते हैं. आप संभावित errors को errors नाम की टेबल में insert भी करना चाहते हैं, और यदि error insert करते समय कुछ असफल हो, तो error number और error message दिखाएँ.

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

SQL Server में Transactions और Error Handling

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

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

  • Error handling को एक CATCH ब्लॉक से घेरें.
  • 'Error inserting a product' को errors टेबल में insert करें और इस insertion को एक और TRY ब्लॉक से घेरें.
  • Nested error handling को एक और CATCH ब्लॉक से घेरें.
  • Inner CATCH ब्लॉक में error line और error message select करें.

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

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

BEGIN TRY
    INSERT INTO products (product_name, stock, price) 
    VALUES	('Trek Powerfly 5 - 2018', 2, 3499.99),   		
    		('New Power K- 2018', 3, 1999.99)		
END TRY
-- Set up the outer CATCH block
___ ___
	SELECT 'An error occurred inserting the product!';
    -- Set up the inner TRY block
    ___ ___
    	-- Insert the error
    	INSERT INTO ___ 
        	VALUES ('Error inserting a product');
    ___ ___    
    -- Set up the inner CATCH block
    ___ ___
    	-- Show number and message error
    	SELECT 
        	___ AS line,	   
			___ AS message; 
    ___ ___    
___ ___
कोड संपादित करें और चलाएँ