import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.io.File ; import java.io.FileInputStream ; import java.io.InputStream ; public class ClobDemo01{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; String name = "李兴华" ; // 表示姓名 String sql = "INSERT INTO userclob(name,note) VALUES (?,?) " ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; // 创建PreapredStatement对象 File f = new File("d:" + File.separator + "mldn.txt") ; InputStream input = null ; input = new FileInputStream(f) ; // 通过输入流读取文件 pstmt.setString(1,name) ; pstmt.setAsciiStream(2,input,(int)f.length()) ; pstmt.executeUpdate() ; conn.close() ; // 数据库关闭 } };
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.sql.ResultSet ; import java.io.File ; import java.io.FileInputStream ; import java.io.InputStream ; import java.util.Scanner ; public class ClobDemo02{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; ResultSet rs = null ; int id = 1 ; // 读取的编号 String sql = "SELECT name,note FROM userclob WHERE id=? " ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; // 创建PreapredStatement对象 pstmt.setInt(1,id) ; rs = pstmt.executeQuery() ; if(rs.next()){ String name = rs.getString(1) ; StringBuffer note = new StringBuffer() ; System.out.println("姓名:" + name) ; InputStream input = rs.getAsciiStream(2) ; Scanner scan = new Scanner(input) ; // 使用Scanner类读取内容 scan.useDelimiter(" ") ; // 将文件换行作为分割符 while(scan.hasNext()){ note.append(scan.next()).append(" ") ; } System.out.println("内容:" + note) ; input.close() ; } rs.close() ; pstmt.close() ; conn.close() ; // 数据库关闭 } };
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.sql.Clob ; import java.sql.ResultSet ; public class ClobDemo03{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; ResultSet rs = null ; int id = 1 ; // 读取的编号 String sql = "SELECT name,note FROM userclob WHERE id=? " ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; // 创建PreapredStatement对象 pstmt.setInt(1,id) ; rs = pstmt.executeQuery() ; if(rs.next()){ String name = rs.getString(1) ; System.out.println("姓名:" + name) ; Clob c = rs.getClob(2) ; String note = c.getSubString(1,(int)c.length()) ; System.out.println("内容:" + note ) ; c.truncate(100) ; // 只能读100个内容 System.out.println("部分读取内容:" + c.getSubString(1,(int)c.length())) ; } rs.close() ; pstmt.close() ; conn.close() ; // 数据库关闭 } };
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.io.File ; import java.io.FileInputStream ; import java.io.InputStream ; public class BlobDemo01{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; String name = "李兴华" ; String sql = "INSERT INTO userblob(name,photo) VALUES (?,?) " ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; File f = new File("d:" + File.separator + "mldn.gif") ; // 图片文件 InputStream input = null ; input = new FileInputStream(f) ; pstmt.setString(1,name) ; // 设置第一个“?”的内容 pstmt.setBinaryStream(2,input,(int)f.length()) ; // 设置输入流 pstmt.executeUpdate() ; // 更新数据库 pstmt.close() ; conn.close() ; // 数据库关闭 } };
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.io.File ; import java.io.FileOutputStream ; import java.sql.ResultSet ; import java.io.InputStream ; import java.io.InputStream ; import java.io.OutputStream ; public class BlobDemo02{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; ResultSet rs = null ; int id = 1 ; String sql = "SELECT name,photo FROM userblob WHERE id=?" ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; pstmt.setInt(1,id) ; rs = pstmt.executeQuery() ; // 执行查询 if(rs.next()){ String name = rs.getString(1) ; System.out.println("姓名:" + name) ; InputStream input = rs.getBinaryStream(2) ; File f = new File("d:" + File.separator + "loadmldn.gif") ; // 图片文件 OutputStream out = null ; out = new FileOutputStream(f) ; int temp = 0 ; while((temp=input.read())!=-1){ // 边读边写 out.write(temp) ; } input.close() ; out.close() ; } pstmt.close() ; conn.close() ; // 数据库关闭 } };
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.SQLException ; import java.sql.PreparedStatement ; import java.sql.Blob ; import java.sql.ResultSet ; import java.io.File ; import java.io.FileOutputStream ; import java.io.InputStream ; import java.io.InputStream ; import java.io.OutputStream ; public class BlobDemo03{ // 定义MySQL的数据库驱动程序 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ; // 定义MySQL数据库的连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ; // MySQL数据库的连接用户名 public static final String DBUSER = "root" ; // MySQL数据库的连接密码 public static final String DBPASS = "mysqladmin" ; public static void main(String args[]) throws Exception{ // 所有异常抛出 Connection conn = null ; // 数据库连接 PreparedStatement pstmt = null ; ResultSet rs = null ; int id = 1 ; String sql = "SELECT name,photo FROM userblob WHERE id=?" ; Class.forName(DBDRIVER) ; // 加载驱动程序 conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ; pstmt = conn.prepareStatement(sql) ; pstmt.setInt(1,id) ; rs = pstmt.executeQuery() ; // 执行查询 if(rs.next()){ String name = rs.getString(1) ; System.out.println("姓名:" + name) ; Blob b = rs.getBlob(2) ; File f = new File("d:" + File.separator + "loadmldn.gif") ; // 图片文件 OutputStream out = null ; out = new FileOutputStream(f) ; out.write(b.getBytes(1,(int)b.length())) ; out.close() ; } pstmt.close() ; conn.close() ; // 数据库关闭 } };