網頁

2020/5/3

Java JDBC PreparedStatement 更新BLOB update BLOB

Java使用JDBCPreparedStatement更新BLOB型態欄位的範例如下。

使用PreparedStatement.setBytes(int parameterIndex, byte[] x)即可將byte[]更新到BLOB資料型態的欄位。

/**
 * 更新員工照片
 *
 * @param bytes 照片的bytes[]
 * @param id    EMPLOYEE.ID
 * @param conn  連線物件
 * @throws SQLException
 */
static void updatePhoto(
        byte[] bytes,
        long id,
        Connection conn
) throws SQLException {
    String sql = "UPDATE EMPLOYEE SET PHOTO = ? where ID = ?"; // EMPLOYEE.PHOTO為BLOB資料型態欄位
    try (
            PreparedStatement ps = conn.prepareStatement(sql)
    ) {
        ps.setBytes(1, bytes); // 更新BLOB欄位
        ps.setLong(2, id);
        ps.execute();
    }

}


沒有留言:

張貼留言