Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Sử dụng PL / SQL làm cách nào để tôi đưa nội dung của tệp vào một đốm màu?

Để thực hiện hoàn toàn bằng PL / SQL, tệp cần phải ở trên máy chủ, nằm trong thư mục mà bạn cần xác định trong cơ sở dữ liệu. Tạo các đối tượng sau:

CREATE OR REPLACE DIRECTORY
    BLOB_DIR
    AS
    '/oracle/base/lobs'
/



CREATE OR REPLACE PROCEDURE BLOB_LOAD
AS

    lBlob  BLOB;
    lFile  BFILE := BFILENAME('BLOB_DIR', 'filename');

BEGIN

    INSERT INTO table (id, your_blob)
        VALUES (xxx, empty_blob())
        RETURNING your_blob INTO lBlob;

    DBMS_LOB.OPEN(lFile, DBMS_LOB.LOB_READONLY);

    DBMS_LOB.OPEN(lBlob, DBMS_LOB.LOB_READWRITE);

    DBMS_LOB.LOADFROMFILE(DEST_LOB => lBlob,
                          SRC_LOB  => lFile,
                          AMOUNT   => DBMS_LOB.GETLENGTH(lFile));

    DBMS_LOB.CLOSE(lFile);
    DBMS_LOB.CLOSE(lBlob);

    COMMIT;

END;
/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chúng ta có thể sử dụng phân luồng trong PL / SQL không?

  2. Phát hiện xem một giá trị có chứa ít nhất một chữ số trong Oracle hay không

  3. Nhận XEM ddl bằng cách sử dụng truy vấn

  4. Oracle SQL Developer:Hiển thị kết quả REFCURSOR trong Grid?

  5. SQL không hiển thị giá trị null trên một truy vấn không bằng?