sql >> データベース >  >> RDS >> Oracle

ファイル全体をメモリにロードせずに巨大なファイルをBLOB(Oracle)に挿入するにはどうすればよいですか?

    そこにいる人のために...

    それを行うためのプロセスは次のとおりです。

    stmt.execute ("INSERT INTO my_blob_table VALUES ('row1', empty_blob())");
    BLOB blob;
    cmd = "SELECT * FROM my_blob_table WHERE X='row1' FOR UPDATE";
    ResultSet rset = stmt.executeQuery(cmd);
    rset.next();
    BLOB blob = ((OracleResultSet)rset).getBLOB(2);
    File binaryFile = new File("john.gif");
    System.out.println("john.gif length = " + binaryFile.length());
    FileInputStream instream = new FileInputStream(binaryFile);
    OutputStream outstream = blob.setBinaryStream(1L);
    int size = blob.getBufferSize();
    byte[] buffer = new byte[size];
    int length = -1;
    

    出典: http://docs.oracle.com /cd/B19306_01/java.102/b14355/oralob.htm#CHDFHHHG



    1. 年を無視して、他の2つの日付の間の日付

    2. mysqlからphp、xmlは空白の年齢を示しています

    3. データベースプロセスを高速化するにはどうすればよいですか?

    4. 照合を一度にutf8_binに変更する方法