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

ओरेकल:एक बड़ी एक्सएमएल फाइल लोड हो रही है?

आप SQL के माध्यम से सर्वर पर XML फ़ाइलों तक पहुँच सकते हैं। /tmp/tmp.xml में अपने डेटा के साथ, आप सबसे पहले निर्देशिका की घोषणा करेंगे:

SQL> create directory d as '/tmp';

Directory created

फिर आप अपनी XML फ़ाइल को सीधे क्वेरी कर सकते हैं:

SQL> SELECT XMLTYPE(bfilename('D', 'tmp.xml'), nls_charset_id('UTF8')) xml_data
  2    FROM dual;

XML_DATA
--------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<badges>
  [...]

अपनी फ़ाइल में फ़ील्ड तक पहुँचने के लिए, आप उदाहरण के लिए किसी अन्य SO में वर्णित विधि का उपयोग कर सकते हैं:

SQL> SELECT UserId, Name, to_timestamp(dt, 'YYYY-MM-DD"T"HH24:MI:SS.FF3') dt
  2    FROM (SELECT XMLTYPE(bfilename('D', 'tmp.xml'), 
                            nls_charset_id('UTF8')) xml_data
  3            FROM dual),
  4         XMLTable('for $i in /badges/row
  5                              return $i'
  6                  passing xml_data
  7                  columns UserId NUMBER path '@UserId',
  8                          Name VARCHAR2(50) path '@Name',
  9                          dt VARCHAR2(25) path '@Date');

    USERID NAME       DT                         
---------- ---------- ---------------------------
      3718 Teacher    2008-09-15 08:55:03.923    
       994 Teacher    2008-09-15 08:55:03.957    


  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 डेटाबेस में PL/SQL बल्क कलेक्ट का परिचय

  3. ORA-00933:SQL कमांड ठीक से समाप्त नहीं हुआ

  4. Oracle पहचान कॉलम और चयन में डालें

  5. सामान्य कॉलम (ए, बी) और (ए, सी) के साथ 2 प्रश्नों को केवल एक (ए, बी, सी) में कैसे बदलें?