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

Oracle में किसी फ़ाइल से डेटा को CLOB में कॉपी करना

Oracle में किसी फ़ाइल से डेटा को CLOB में कॉपी करना

निम्न copy_file_data_to_clob() प्रक्रिया दिखाती है कि किसी फ़ाइल से टेक्स्ट कैसे पढ़ा जाए और
उसे एक CLOB में स्टोर किया जाए:
CREATE PROCEDURE copy_file_data_to_clob(
p_clob_id INTEGER,
p_directory VARCHAR2,
p_file_name VARCHAR2
) AS
v_file UTL_FILE.FILE_TYPE;
v_chars_read INTEGER;
v_dest_clob CLOB;
v_amount INTEGER :=32767;
v_char(32767 VARCHAR) );
BEGIN
-- एक खाली CLOB डालें
clob_content में डालें(
id, clob_column
) VALUES (
p_clob_id, EMPTY_CLOB()
);
-- CLOB का LOB लोकेटर प्राप्त करें
clob_column चुनें
v_dest_clob में
clob_content से
जहां id =p_clob_id
अपडेट के लिए;
-- पाठ पढ़ने के लिए फ़ाइल खोलें (प्रति पंक्ति v_amount वर्णों तक)
v_file :=UTL_FILE.FOPEN(p_directory, p_file_name, 'r', v_amount);
-- copy फ़ाइल से डेटा एक बार में v_dest_clob एक पंक्ति में
LOOP
BEGIN
-- फ़ाइल से एक पंक्ति को v_char_buffer में पढ़ें;
-- G ET_LINE() न्यूलाइन कैरेक्टर को इसमें कॉपी नहीं करता है
-- v_char_buffer
UTL_FILE.GET_LINE(v_file, v_char_buffer);
v_chars_read :=LENGTH(v_char_buffer);
-- संलग्न करें लाइन टू v_dest_clob
DBMS_LOB.WRITEAPPEND(v_dest_clob, v_chars_read, v_char_buffer);
-- v_dest_clob में एक नई लाइन जोड़ें क्योंकि v_char_buffer;
-- न्यूलाइन के लिए ASCII मान 10 है, इसलिए CHR(10 ) न्यूलाइन देता है
DBMS_LOB.WRITEAPPEND(v_dest_clob, 1, CHR(10));
EXCEPTION
-- जब फ़ाइल में और कोई डेटा न हो तो बाहर निकलें
जब NO_DATA_FOUND तब
EXIT;
END;
END LOOP;
--फ़ाइल बंद करें
UTL_FILE.FCLOSE(v_file);
DBMS_OUTPUT.PUT_LINE('Copy सफलतापूर्वक कॉपी करें पूर्ण।');
END copy_file_data_to_clob;
/

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में तालिका से डुप्लिकेट पंक्तियों को हटाना

  2. ओरेकल डेटाबेस क्या है?

  3. आरएसी में एसवाईएस पासवर्ड बदलना

  4. Oracle REPLACE() फ़ंक्शन कैरिज-रिटर्न और लाइन-फ़ीड्स को हैंडल नहीं कर रहा है

  5. मेमोरी प्रेशर एनालिसिस रिस्क स्टेट