摘要:知識點總結大文本對象的使用知識點總結用于存儲大量的文本數據大字段有些特殊,不同數據庫處理的方式不一樣,大字段的操作常常是以流的方式來處理。最大長度為字符的列。
Java知識點總結(JDBC-大文本對象的使用)
@(Java知識點總結)[Java, JDBC]
CLOB(Chaaracter Large Object)用于存儲大量的文本數據
大字段有些特殊,不同數據庫處理的方式不一樣,大字段的操作常常是以流的方式來處理。而非一般的字段,一次即可讀出數據。
Mysql中相關類型:TINYTEXT最大長度為255(2^8-1)字符的TEXT列。
TEXT最大長度為65535(2^16-1)字符的TEXT列。
MEDIUMTEXT最大長度為16777215(2^24-1)字符的TEXT列。
LONGTEXT最大長度為4294967295或4GB(2^32-1)字符的TEXT列。
import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.io.UnsupportedEncodingException; import java.sql.Clob; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * 測試CLOB 文本大對象的使用 * 將字符串和文本內容插入到數據庫中的CLOB字段,講CLOB字段取出來的操作 * @author Administrator * */ public class Demo02 { //存 private static void insert(Connection conn){ String sql = "insert into users(NAME,INFO) values(?,?)"; PreparedStatement ps = null; try { ps = conn.prepareStatement(sql); ps.setString(1, "黃曉明"); //將文本內容直接輸入到數據庫 //ps.setClob(2, new FileReader(new File("E:/b.txt"))); //講程序中的字符串輸入到數據庫的CLOB字段中 ps.setClob(2, new BufferedReader( new InputStreamReader(new ByteArrayInputStream("黃曉明是個明星".getBytes("utf-8"))))); ps.execute(); } catch (SQLException | UnsupportedEncodingException e) { e.printStackTrace(); }finally{ DBUtil. close(ps); DBUtil. close(conn); } } //讀 private static void read(Connection conn){ String sql = "select * from users where USERID = ?"; PreparedStatement ps = null; ResultSet rs = null; try { ps = conn.prepareStatement(sql); ps.setObject(1, 10); //setObject()可以代替setInt()、setString()等 rs = ps.executeQuery(); while(rs.next()){ Clob clob = rs.getClob("INFO"); Reader r= clob.getCharacterStream(); //通過字符流的方式讀取 int temp = 0; while((temp = r.read())!=-1){ System.out.print((char)temp); } } } catch (SQLException | IOException e) { e.printStackTrace(); }finally{ DBUtil.close(rs); DBUtil.close(ps); DBUtil.close(conn); } } public static void main(String[] args) { insert(DBUtil.getConn()); read(DBUtil.getConn()); } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/71461.html
摘要:知識點總結二進制對象的使用知識點總結用于存儲大量的二進制數據大字段有些特殊,不同數據庫處理的方式不一樣,大字段的操作常常是以流的方式來處理的。最大長度為,字節的列。二進制對象的使用插入一張圖片,并讀取出來存讀 Java知識點總結(JDBC-二進制對象的使用) @(Java知識點總結)[Java, JDBC] BLOB(Binary Large Object) 用于存儲大量的二進制數據...
摘要:知識點總結概要知識點總結簡介為開發者使用數據庫提供了統一的編程接口,它由一組類和接口組成主要在包中。跟蹤可用的驅動程序,并在數據庫和相應的驅動程序之間建立連接。接口與特定數據庫的連接會話,在連接上下文中執行語句并返回結果。 Java知識點總結(JDBC-概要) @(Java知識點總結)[Java, JDBC] 簡介 JDBC(Java Database Connection)為Java...
摘要:知識點總結連接步驟及知識點總結連接數據庫步驟依序關閉使用的對象連接操作加載對應驅動建立連接連接對象內部包含了對象,是一個遠程連接。比較耗時這是對象管理的一個要點真正開發中,為了提高效率,都會使用連接池來管理連接對象張柏芝女張三執行結果 Java知識點總結(JDBC-連接步驟及CRUD) @(Java知識點總結)[Java, JDBC] 連接數據庫步驟 showImg(https://s...
閱讀 2572·2021-09-02 15:40
閱讀 1576·2019-08-30 15:54
閱讀 1089·2019-08-30 12:48
閱讀 3410·2019-08-29 17:23
閱讀 1056·2019-08-28 18:04
閱讀 3674·2019-08-26 13:54
閱讀 616·2019-08-26 11:40
閱讀 2406·2019-08-26 10:15