Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle के डंप (सिस्टिमस्टैम्प) बाइट्स का अर्थ

वहाँ विभिन्न सतही रूप से समान लेकिन आंतरिक रूप से भिन्न डेटाटाइम डेटाटाइप हैं। systimestamp टाइप 188 है (और इसमें समय क्षेत्र की जानकारी है); एक टाइमस्टैम्प शाब्दिक समय क्षेत्र की जानकारी के बिना 187 टाइप है और इसके साथ 188 है; और एक सादा टाइमस्टैम्प कॉलम 180 टाइप है:

select dump(systimestamp) from dual;

DUMP(SYSTIMESTAMP)                                                             
--------------------------------------------------------------------------------
Typ=188 Len=20: 223,7,7,31,9,50,28,11,128,203,79,35,1,0,5,0,0,0,0,0             

select dump(timestamp '2015-07-31 08:55:06.157047 +00:00') from dual;

DUMP(TIMESTAMP'2015-07-3108:55:06.157047+00:00')              
---------------------------------------------------------------
Typ=188 Len=20: 223,7,7,31,8,55,6,0,216,88,92,9,0,0,5,0,0,0,0,0

select dump(timestamp '2015-07-31 08:55:06.157047') from dual;

DUMP(TIMESTAMP'2015-07-3108:55:06.157047')                    
---------------------------------------------------------------
Typ=187 Len=20: 223,7,7,31,8,55,6,0,216,88,92,9,0,0,3,0,0,0,0,0

create table t (ts timestamp);
insert into t (ts) values (timestamp '2015-07-31 08:55:06.157047');
select dump(ts) from t;

DUMP(TS)                                                                       
--------------------------------------------------------------------------------
Typ=180 Len=11: 120,115,7,31,9,56,7,9,92,88,216                                 

उनमें से, केवल एक टाइमस्टैम्प कॉलम आपके द्वारा लिंक किए गए लेख में आंतरिक प्रारूप का उपयोग करता है, वर्ष के लिए अतिरिक्त -100 नोटेशन का उपयोग करता है।

दूसरों के लिए, पहला बाइट आधार-256 संशोधक है, और दूसरा बाइट आधार 256 वर्ष है; तो आप इसकी व्याख्या इस प्रकार करेंगे

223 + (7 * 256) = 2015

आप My Oracle सपोर्ट दस्तावेज़ 69028.1 में आंतरिक संग्रहण के बारे में अधिक पढ़ सकते हैं। वह, और टिप्पणियों में जुड़े पहले के उत्तर, दो दिनांक प्रकारों को देखें, लेकिन टाइमस्टैम्प को सेकंड के समान माना जाता है, और बाकी में से कुछ को 187/188 प्रकार के लिए अनुमान लगाया जा सकता है - वैसे भी आंशिक-सेकंड भाग:

Byte 1 - Base 256 year modifier: 223
2      - Base 256 year: 7 (256 * 7 = 1792 + 223 = 2015)
3      - Month: 7
4      - Day: 31
5      - Hours: 8
6      - Minutes: 55
7      - Seconds: 6
8      - Unused?
9      - Base 256 nanoseconds: 216
10     - Base 256 ns modifier 1: 256 * 88 = 22528
11     - Base 256 ns modifier 2: 256 * 256 * 92 = 6029312
12     - Base 256 ns modifier 3: 256 * 256 * 256 * 9 = 150994944
           => actual nanoseconds = 216 + 22528 + 6029312 + 150994944 
           => 157047000
13-20  - Time zone data?

टाइप 120 के लिए भिन्नात्मक सेकंड समान होते हैं लेकिन बाइट्स उलटे होते हैं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल में कई रिकॉर्ड डालें

  2. Oracle LIMIT n,m समतुल्य

  3. वर्कर एसक्यूएल डेवलपर से अग्रणी शून्य को हटा रहा है

  4. डाउनटाइम और हॉटपैच एडॉप R12.2 . में मोड लागू करते हैं

  5. Oracle में संगतता स्तर की जाँच करने के 2 तरीके (SQLcl और SQL*Plus)