如果要实现mysql插入Clob字段,应该采用什么方法呢?下面这个例子就将为您演示如何实现mysql插入Clob字段的方法,供您参考。
import java.io.*; import java.sql.*; public class DBTest { public static void main(String[] args) { String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/upload useUnicode=true&characterEncoding=Big5"; String user = "caterpillar"; String password = "123456"; try { Class.forName(driver); Connection conn = DriverManager.getConnection(url, user, password); File file = new File("./logo_phpbb.jpg"); int length = (int) file.length(); InputStream fin = new FileInputStream(file); PreparedStatement pstmt = conn.prepareStatement( "INSERT INTO files VALUES( , )"); pstmt.setString(1, "Logo"); pstmt.setBinaryStream (2, fin, length); pstmt.executeUpdate(); pstmt.clearParameters(); pstmt.close(); fin.close(); Statement stmt = conn.createStatement(); ResultSet result = stmt.executeQuery("SELECT * FROM files"); result.next(); String description = result.getString(1); Blob blob = result.getBlob(2); System.out.println("描述:" + description); FileOutputStream fout = new FileOutputStream("./logo_phpbb_2.jpg"); fout.write(blob.getBytes(1, (int)blob.length())); fout.flush(); fout.close(); stmt.close(); conn.close(); } catch(ClassNotFoundException e) { System.out.println("找不到驱动"); e.printStackTrace(); } catch(SQLException e) { e.printStackTrace(); } catch(IOException e) { e.printStackTrace(); } } }
mysql插入Clob字段的实例介绍。