राज्य मंत्री से-
<ब्लॉककोट>एक टाइमस्टैम्प कॉलम में लीप सेकंड डालें ORA-01852 (DocID 1553906.1) के साथ विफल हो जाता है
इस पर लागू होता है:
Oracle डाटाबेस - एंटरप्राइज़ संस्करण - संस्करण 8.1.7.4 और बाद में
Oracle डाटाबेस - मानक संस्करण - संस्करण 8.1.7.4 और बाद के संस्करण
इस दस्तावेज़ की जानकारी किसी भी प्लेटफ़ॉर्म पर लागू होती है।
लक्षण:
टाइमस्टैम्प कॉलम में लीप सेकंड डालने का प्रयास विफल रहता है:ORA-01852:सेकंड 0 और 59 के बीच होना चाहिए
कारण
किसी दिनांक या टाइमस्टैम्पडेटाटाइप में>59 सेकंड के मान को संग्रहीत करना संभव नहीं है
समाधान
इस समस्या को हल करने के लिए, लीप सेकेंड रिकॉर्ड को इसके बजाय avarchar2 डेटाटाइप में संग्रहीत किया जा सकता है। उदा।
SQL> create table test (val number, t varchar2(30));
Table created.
SQL> insert into test values(123, '2012-06-30T23:59:60.000000Z');
1 row created.
सबसे अच्छा समाधान नहीं, बल्कि एकमात्र समाधान है।