DemoPreparedStatementSetAsciiStream.java Source code

Java tutorial

Introduction

Here is the source code for DemoPreparedStatementSetAsciiStream.java

Source

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class DemoPreparedStatementSetAsciiStream {
    public static Connection getConnection() throws Exception {
        String driver = "oracle.jdbc.driver.OracleDriver";
        String url = "jdbc:oracle:thin:@localhost:1521:databaseName";
        String username = "name";
        String password = "password";
        Class.forName(driver);
        Connection conn = DriverManager.getConnection(url, username, password);
        return conn;
    }

    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement pstmt = null;
        String query = null;
        try {
            conn = getConnection();
            String fileName = "fileName.txt";
            File file = new File(fileName);
            int fileLength = (int) file.length();
            InputStream stream = (InputStream) new FileInputStream(file);

            query = "insert into  LONG_VARCHAR_TABLE(id, stream) values(?, ?)";
            pstmt = conn.prepareStatement(query);
            pstmt.setString(1, fileName);
            pstmt.setAsciiStream(2, stream, fileLength);

            int rowCount = pstmt.executeUpdate();
            System.out.println("rowCount=" + rowCount);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                pstmt.close();
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}