Sysdate अद्यतन - ओरेकल में 10 मिनट

मुझे sysdate के साथ एक दिनांक कॉलम अपडेट करना होगा, लेकिन 10 मिनट पहले। क्या करने का कोई तरीका है?

कृपया मदद करे।

0
जोड़ा संपादित
विचारों: 1
@ShannonSeverance आप वास्तव में महान हैं, आपको समस्या मिली। बहुत बहुत धन्यवाद।
जोड़ा लेखक Vaandu, स्रोत
मैंने एकल पंक्ति अपडेट की और अपडेट करने के बाद प्रतिबद्ध किया और to_char फ़ंक्शन के साथ चयन करने का प्रयास किया।
जोड़ा लेखक Vaandu, स्रोत
मैंने कोशिश की लेकिन काम नहीं किया। अद्यतन तालिका सेट संशोधित_डेट = (sysdate - 10/(24 * 60)) जहां property_name = 'xxx';
जोड़ा लेखक Vaandu, स्रोत
परिभाषित करें "काम नहीं किया"। क्या आपको कोई त्रुटि मिली? यदि हां, तो क्या त्रुटि है? क्या यह पंक्तियों की अपेक्षित संख्या अद्यतन करता है? आपको विश्वास क्यों नहीं है कि यह सही है?
जोड़ा लेखक Justin Cave, स्रोत
क्या तालिका में एक अद्यतन ट्रिगर है जो modified_date को sysdate पर सेट करता है? यह अद्यतन कथन में उपयोग किए गए मानों को ओवरराइड करेगा।
जोड़ा लेखक Shannon Severance, स्रोत
"[ट्रिगर] लंबे समय तक रखरखाव सिरदर्द का कारण बनता है। ट्रिगर कोड के छोटे टुकड़े होते हैं जो सीधे किसी भी चीज से नहीं चलते हैं-वे कुछ अन्य ऑपरेशन के साइड इफेक्ट के रूप में" होते हैं "। क्योंकि उनका काम साइड इफेक्ट के रूप में किया जाता है, लोग अक्सर भूल जाते हैं कि ट्रिगर वहां हैं। (और सभी दुष्प्रभावों के लिए कोड की समीक्षा करना मुश्किल है, अगर असंभव नहीं है।) "- टॉम Kyte oracle.com/technetwork/issue-archive/2008/08-sep/… । OTOH, अद्यतन दिनांक सेट करने के लिए
जोड़ा लेखक Shannon Severance, स्रोत

2 उत्तर

शायद यह पसंद है

select sysdate - 10/(24*60) from dual;
0
जोड़ा
क्या काम नहीं किया? मुझे आपके द्वारा की गई सटीक क्वेरी दिखाएं; शायद अधिक मदद करने में सक्षम हो जाएगा।
जोड़ा लेखक Rahul, स्रोत
तालिका में अपना संशोधित_डेट कॉलम देखें और सत्यापित करें कि यह वास्तव में बदल गया है या नहीं।
जोड़ा लेखक Rahul, स्रोत
@ वानाथी: आप शायद समय का सही ढंग से प्रदर्शित नहीं कर रहे हैं। घंटे, मिनट और सेकंड देखने के लिए अपनी एनएलएस सेटिंग्स बदलें
जोड़ा लेखक a_horse_with_no_name, स्रोत
बहुत बहुत धन्यवाद, मुद्दा अब हल हो गया है।
जोड़ा लेखक Vaandu, स्रोत
मैंने कॉलम डेटा की जांच की है, इसे केवल sysdate में अपडेट किया जा रहा है।
जोड़ा लेखक Vaandu, स्रोत
यह वाला। 'अद्यतन तालिका सेट संशोधित_डेट = (sysdate - 10/(24 * 60)) जहां property_name =' xxx '; `
जोड़ा लेखक Vaandu, स्रोत
मैंने इसे पहले ही कोशिश की है, लेकिन काम नहीं किया है। जवाब के लिए धन्यवाद।
जोड़ा लेखक Vaandu, स्रोत
@ वानाथी - और आप क्यों नहीं मानते कि यह काम करता है?
जोड़ा लेखक Justin Cave, स्रोत
मैं @ShannonSeverance द्वारा पहले पूछे गए प्रश्न को दोहरा दूंगा: क्या तालिका में कोई अद्यतन ट्रिगर है जो आपके लिए MODIFIED_DATE सेट कर सकता है? अपनी तालिका पर ऐसे ट्रिगर ढूंढने के लिए चयन करें जहां से START_SPAN_TRIGGERS से TRIGGERING_EVENT '% अद्यतन%' और TABLE_OWNER = 'YOUR_USER' और TABLE_NAME = 'YOUR_TABLE' चुनें। फिर उनके माध्यम से जाएं और देखें कि क्या कोई ट्रिगर कॉलम संशोधित दिनांक बदलता है या नहीं। सौभाग्य।
जोड़ा लेखक Bob Jarvis, स्रोत
UPDATE the_table
   SET the_column = current_timestamp - interval '10' minute
WHERE pk = 42;

It certainly works, see here: http://sqlfiddle.com/#!4/a1986/2

0
जोड़ा
@ वानाथी: काम नहीं किया मान्य ओरेकल त्रुटि संदेश नहीं है। और आपका कथन इसे 20 मिनट पहले बनाता है भले ही आप 10 मिनट चाहते थे
जोड़ा लेखक a_horse_with_no_name, स्रोत
यह काम नहीं किया। अद्यतन तालिका सेट modified_date = (current_timestamp - अंतराल '20' मिनट) जहां property_name = 'xxx';
जोड़ा लेखक Vaandu, स्रोत
बहुत बहुत धन्यवाद, मुझे समस्या मिली।
जोड़ा लेखक Vaandu, स्रोत