clob字段读取时不能用数据源,所以必须用原始方法存储。
代码如下:
存储数据:
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:orcl","username","password");
}catch(ClassNotFoundException E){
}catch(SQLException e){
}
try {
conn.setAutoCommit(false);
ps = conn.prepareStatement(sql);
ps.setString(1,form.getPreTitle());
ps.setString(2,form.getTitle());
。。。。。。。。。。。。。。。。。
flag = ps.executeUpdate();
String sql_1 = "select news_content from t_news_temp where news_title='"+form.getTitle()+"' for update";
st = conn.createStatement();
rs = st.executeQuery(sql_1);
CLOB clob = null;
if(rs.next()){
clob = ((oracle.jdbc.OracleResultSet)rs).getCLOB("news_content");
java.io.Writer writer = clob.getCharacterOutputStream();
try {
writer.write(form.getContent());
writer.flush();
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println(e);
}
}
conn.commit();
conn.setAutoCommit(true);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println(e);
return 0;
}
修改数据:
修改也不能直接用数据源。
conn = ConnectionHelper.getConnection();
conn.setAutoCommit(false);
ps = conn.prepareStatement(sql);
ps.setString(1,form.getPreTitle());
ps.setString(2,form.getTitle());
ps.executeUpdate();
String sql_1 = "select news_content from t_news where news_id="+form.getId();
st = conn.createStatement();
rs = st.executeQuery(sql_1);
CLOB clob = null;
while(rs.next()){
clob = ((oracle.jdbc.OracleResultSet) rs).getCLOB("news_content");
oracle.sql.CLOB my_clob = (oracle.sql.CLOB) clob;
java.io.Writer writer = my_clob.getCharacterOutputStream();
try {
writer.write(form.getContent());
writer.flush();
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
conn.commit();
conn.setAutoCommit(true);
查询数据:
查询数据也可以直接用数据源。
clob = rs.getClob("news_content");
form.setContent(clob.getSubString((long)1,(int)clob.length()));
分享到:
相关推荐
当我们使用DBLink连接远程数据库时,CLOB字段可能无法正确地传输和处理。这是因为CLOB字段的处理方式与其他数据类型不同。在远程数据库中,CLOB字段可能会被截断或损坏,从而导致数据的不一致。 解决方案 解决...
### 读取Oracle数据库中CLOB字段的值 在处理Oracle数据库时,经常会遇到需要读取CLOB(Character Large Object)类型字段的情况。CLOB主要用于存储大量的文本数据,如文章、文档等内容。由于CLOB类型的数据量可能...
Java 中操作 Oracle 的 CLOB 字段是一种常见的操作,在实际开发中,我们经常需要在 Oracle 数据库中存储和读取大型文本数据,这时就需要使用 CLOB(Character Large OBject)类型的字段来存储这些数据。下面我们将...
JDBC读写Oracle的CLOB字段
### 数据库读取CLOB字段 #### 概述 在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型。CLOB能够容纳4GB的文本信息,适用于存储如文章、报告或者XML文档等大型文本数据。...
本文将详细介绍如何在Oracle中实现CLOB字段到字符串类型的转换,并探讨其中的关键技术和注意事项。 #### 一、CLOB概述 1. **定义**: - `CLOB`是Oracle数据库提供的一种特殊的数据类型,用于存储大文本数据。 - ...
Oracle CLOB 行字段全文检索实现方法 Oracle 数据库中,CLOB 行字段是一种常用的数据类型,用于存储大...这些过程函数可以帮助开发者更好地操作 LOB 数据类型,实现对 CLOB 字段中的内容进行 Like 查找和其他操作。
Oracle如何插入CLOB字段值,附件为简单的示例代码。Oracle如何插入CLOB字段值,附件为简单的示例代码。
修改clob blob 字段 修改clob blob 字段 修改clob blob 字段
在Oracle数据库中,CLOB(Character Large Object)字段类型用于存储大量的文本数据,如XML文档、长篇文章或者大量字符数据。然而,当你尝试向CLOB字段插入数据时,如果超过了Oracle规定的最大限制,就会遇到“ORA-...
Hibernate存储Clob字段的方式总结涉及了在Java开发中使用Hibernate操作大型文本字段Clob的操作方法。本文主要介绍了两种操作Clob字段的方法,一种是将Clob字段直接映射为String类型,另一种是使用Clob类型进行处理。...
为了将 SQL Server 中的 Image 类型数据导出到 Oracle 的 CLOB 字段中,我们需要使用Java 语言和 JDBC 驱动程序。下面是一个示例代码,演示如何将 SQL Server 中的 Image 类型数据导出到 Oracle 的 CLOB 字段中: ...
本主题主要探讨如何使用JDBC有效地操作Oracle数据库中的CLOB类型字段,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)等操作。 首先,我们需要理解CLOB的基本概念。CLOB是一种数据库对象,...
在Oracle数据库中,通过正确使用CLOB对象和相关的数据库连接API,可以高效地进行CLOB数据的读取和写入。需要注意的是,由于CLOB数据量庞大,读取时应考虑性能优化,如分块读取等策略;写入时则需确保数据的完整性和...
在IT领域,ActiveXObject和Clob字段是两个重要的概念,主要与Web开发和数据库操作相关。ActiveXObject是Microsoft的一种技术,允许在Internet Explorer浏览器中创建和使用COM对象,而Clob是数据库中用于存储大量字符...
CLOB 字段处理 CLOB(Character Large OBject)是 Oracle 中的一种...CLOB 字段处理需要使用 Oracle 的 JDBC 驱动程序和 oracle.sql.CLOB 类,通过 PreparedStatement 对象和 ResultSet 对象来实现数据的存储和读取。
Spring和Hibernate框架结合使用可以有效地进行CLOB字段的操作。以下是实现这一功能的关键步骤和注意事项: 1. **配置SessionFactory** 在Spring配置文件中,你需要创建一个`SessionFactory` bean,同时指定一个`...
用Hiberate处理CLOB字段 ;通过Hiberate处理CLOB类型的数据;
本教程将介绍如何使用Java来读取和写入Oracle数据库中的CLOB字段。 首先,我们需要引入相关的Java和Oracle JDBC驱动库。在上述代码中,我们看到`import oracle.jdbc.driver.OracleDriver;`,这表示我们将使用Oracle...
在数据库编程领域,CLOB(Character Large Object)和BLOB(Binary Large Object)是用于存储大量文本和二进制数据的数据类型。在DELPHI中,处理这些大型对象时需要特殊的技术和策略。本篇文章将深入探讨DELPHI中...