एक Oracle बाहरी निर्देशिका जैसा लगता है नौकरी के लिए एकदम सही है। ध्यान रखें कि यह दृष्टिकोण कठिनाइयों से भरा है यदि यह एक टेक्स्ट फ़ाइल है जिसे उपयोगकर्ता लिख सकते हैं। उपयोगकर्ता ऐसे सौ काम करेंगे, जिन पर आपने कभी विश्वास नहीं किया था कि इससे त्रुटियां होंगी और अधिक ।
लेख से:
एक निर्देशिका बनाएं
अपने_उपयोगकर्ता को पढ़ने, निर्देशिका data_dir पर लिखने दें;
एक बाहरी तालिका बनाएं
CREATE TABLE test_ext (
test_code VARCHAR2(5),
test_name VARCHAR2(50)
)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY ext_tab_data
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
FIELDS TERMINATED BY ','
MISSING FIELD VALUES ARE NULL
(
test_code CHAR(5),
test_name CHAR(50)
)
)
LOCATION ('test1.txt','test2.txt')
)
PARALLEL 5
REJECT LIMIT UNLIMITED;
और फिर टेबल से पढ़ें
SELECT *
FROM test_ext
ORDER BY test_name;
संपादित करें:आप इसे अभी भी उन निर्देशिकाओं के साथ कर सकते हैं जो डेटाबेस सर्वर पर स्थित नहीं हैं लेकिन अधिक काम की आवश्यकता है और यह डेटाबेस सुरक्षा और डेटा गुणवत्ता के लिए और भी अधिक जोखिम का प्रतिनिधित्व करता है। यह दृष्टिकोण या तो स्केल नहीं करता है। क्या आप हर बार एक नया उपयोगकर्ता जोड़े जाने पर एक नई निर्देशिका जोड़ने का इरादा रखते हैं?
Oracle को किसी अन्य मशीन पर स्थित फ़ाइलों तक पहुँचने की अनुमति देने के लिए कदम (विंडोज ऑपरेटिंग सिस्टम मानते हुए)
- एक विंडोज़ या डोमेन उपयोगकर्ता बनाएँ, जिसके पास हर उस निर्देशिका पर फ़ाइल अनुमतियाँ होंगी, जिसे आप एक्सेस करना चाहते हैं
- डेटाबेस सर्वर पर services.msc चलाएं और उपयोगकर्ता को बदलें कि Oracle डेटाबेस सेवा आपके नए डोमेन उपयोगकर्ता पर चलती है। इस उपयोगकर्ता को डेटाबेस सर्वर पर ORA_DBA नामक स्थानीय समूह में जोड़ें
- परिवर्तनों को प्रभावी करने के लिए डेटाबेस को पुनरारंभ करें
- //clientPc/sharedFolder जैसे पथ का उपयोग करके डेटाबेस में एक निर्देशिका बनाएं
- अपने डेटाबेस उपयोगकर्ता को पढ़ने की अनुमति दें
- क्लाइंट मशीन अनुदान पर उस फ़ोल्डर के डोमेन उपयोगकर्ता को पढ़ा जाता है
- कनेक्टिविटी सत्यापित करें UTLFILE . का उपयोग करके क्लाइंट पीसी पर एक नमूना फ़ाइल पढ़ने के लिए