do स्टेटमेंट लिखना
डेटा क्लीन करते समय अक्सर हमें ऐसे रिकॉर्ड मिलते हैं जिनमें गलत तारीखें होती हैं. इससे exception उठेगा और हमारा SQL स्टेटमेंट रुक जाएगा. लेकिन DO फंक्शन और exception हैंडलर का उपयोग करके हमारा स्टेटमेंट अंत तक चल सकता है. आइए देखें कि patients टेबल और created_on कॉलम के साथ ऐसे exception को कैसे हैंडल करें. इससे हमें DO स्टाइल फंक्शन का उपयोग करने का भी मौका मिलेगा.
यह अभ्यास पाठ्यक्रम का हिस्सा है
PostgreSQL में Transactions और Error Handling
अभ्यास निर्देश
- exception को पकड़ना शुरू करने के लिए एक
DOफंक्शन बनाइए. - एक ट्रांजैक्शन BEGIN कीजिए जहाँ आप patients में यह रो
INSERTकरें (a1c=5.8,glucose=89,fasting=TRUE, औरcreated_on= '37-03-2020 01:15:54'). - एक
EXCEPTIONहैंडलर जोड़िए, जो error होने परerrorsटेबल केdetailकॉलम में'bad date'इंसर्ट करे. - भाषा
'plpgsql'निर्दिष्ट कीजिए.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
-- Create a DO $$ function
____ ____
-- BEGIN a transaction block
BEGIN
INSERT INTO patients (a1c, glucose, fasting, created_on)
VALUES (____, ____, ____, '37-03-2020 01:15:54');
-- Add an EXCEPTION
___
-- For all all other type of errors
WHEN others THEN
INSERT INTO errors (msg, detail)
VALUES ('failed to insert', '____');
END;
-- Make sure to specify the language
$$ language '____';
-- Select all the errors recorded
SELECT * FROM errors;