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

Doomed ट्रांज़ैक्शन

आप customer टेबल में दो नए ग्राहकों का डेटा इन्सर्ट करना चाहते हैं। आप ऐसा स्क्रिप्ट तैयार करते हैं जो नियंत्रण रखे कि यदि कोई त्रुटि हो, तो ट्रांज़ैक्शन रोलबैक हो जाए और आपको त्रुटि का संदेश मिल जाए। आप इसे XACT_ABORT और XACT_STATE को साथ में उपयोग करके नियंत्रित करना चाहते हैं।

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

SQL Server में Transactions और Error Handling

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

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

  • XACT_ABORT की उचित सेटिंग का उपयोग करें.
  • जाँचें कि कोई ओपन ट्रांज़ैक्शन है या नहीं.
  • ट्रांज़ैक्शन को रोलबैक करें.
  • त्रुटि संदेश को सेलेक्ट करें.

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

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

-- Use the appropriate setting
SET XACT_ABORT ___;
BEGIN TRY
	BEGIN TRAN;
		INSERT INTO customers VALUES ('Mark', 'Davis', '[email protected]', '555909090');
		INSERT INTO customers VALUES ('Dylan', 'Smith', '[email protected]', '555888999');
	COMMIT TRAN;
END TRY
BEGIN CATCH
	-- Check if there is an open transaction
	IF ___() <> 0
    	-- Rollback the transaction
		___;
    -- Select the message of the error
    SELECT ___() AS Error_message;
END CATCH
कोड संपादित करें और चलाएँ