社区
Web 开发
帖子详情
关于ORACLE的取值问题?
一里路
2005-05-14 10:35:07
ORACLE9数据库有个 CONTENT字段 CLOB型
在数据库中能显示字符,如"大一",但我用JSP的get.Clob("content")却显示出"oracle.sql.CLOB@13f903b"
请问这是怎么回事,有什么方法可以解决?
...全文
123
2
打赏
收藏
关于ORACLE的取值问题?
ORACLE9数据库有个 CONTENT字段 CLOB型 在数据库中能显示字符,如"大一",但我用JSP的get.Clob("content")却显示出"oracle.sql.CLOB@13f903b" 请问这是怎么回事,有什么方法可以解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
MARS.nEIL
2005-05-14
打赏
举报
回复
它输出的是一个变量或类以及它的地址,也就是它没有重载toString方法..
softken2005
2005-05-14
打赏
举报
回复
不能这么取值,给你个例子看看吧
package clob;
import java.sql.*;
import java.io.Writer;
import java.io.Reader;
import java.io.BufferedReader;
public class TestClob {
private Connection con = null;
private PreparedStatement ps = null;
private ResultSet rs = null;
public void test(String content) throws Exception {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "dataBase=jdbc:oracle:thin:@localhost:1521:cms";
try {
Class.forName(driver);
con = DriverManager.getConnection(url, "scott", "tiger");
con.setAutoCommit(false);
ps = con.prepareStatement(
"insert into test(id,clobcol) values(1,EMPTY_CLOB())");//先插入一个空值
ps.executeQuery();
String sql = "select clobcol from test where id=? for update";
ps = null;
ps = con.prepareStatement(sql);
ps.setInt(1, 1);
oracle.jdbc.OracleResultSet result = (oracle.jdbc.OracleResultSet) ps.
executeQuery();
oracle.sql.CLOB clob = null;
while (result.next()) {
clob = (oracle.sql.CLOB) result.getClob("clobcol");
}
Writer out = clob.getCharacterOutputStream();
out.write(content);
out.flush();
out.close();
con.commit();
result.close();
ps.close();
}
catch (SQLException ex) {
ex.printStackTrace();
con.rollback();
}
catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
finally {
con.setAutoCommit(true);
con.close();
}
}
public void getclob() throws Exception {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "dataBase=jdbc:oracle:thin:@localhost:1521:cms";
try {
Class.forName(driver);
con = DriverManager.getConnection(url, "scott", "tiger");
con.setAutoCommit(false);
String sql = "select clobcol from test where id=1";
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
String content=new String();
while (rs.next()) {
oracle.sql.CLOB clob = (oracle.sql.CLOB) rs.getClob("clobcol");
if (clob != null) {
Reader is = clob.getCharacterStream();
BufferedReader br = new BufferedReader(is);
String s = br.readLine();
while (s != null) {
content += s ;
s = br.readLine();
}
}
System.out.println(content);
}
}
catch (SQLException ex) {ex.printStackTrace();
}
catch (ClassNotFoundException ex) {ex.printStackTrace();
}
}
public static void main(String[] args) {
try {
TestClob obj=new TestClob();
String content = "hello,world!";
obj.test(content);
obj.getclob();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}
oracle
如何写循环日期自增_
Oracle
创建序列及循环自增
取值
问题
-
Oracle
博客介绍了
Oracle
创建序列及循环自增
取值
问题
。用sys登陆
Oracle
后,创建了sequence,接着创建对应测试table,插入测试数据并循环执行10次,最后取出数据展示了自增结果。
Oracle
中分组排序
取值
的
问题
本文介绍了
Oracle
数据库中使用row_number(), rank()和dense_rank()三个排名函数进行分组排序的
问题
。通过创建EXAM表并插入数据,展示了在同一个分组内根据分数进行降序排序的不同效果。row_number()按顺序分配编号,rank()允许相同排名,而dense_rank()确保没有排名间隙。这些函数在数据分析和查询优化中有着广泛应用。
Oracle
大小写
取值
问题
本文讲解了在使用Map从
Oracle
数据库查询结果中获
取值
时,应注意字段名的大小写敏感
问题
。通过示例说明,使用正确的大小写可以避免查询结果为null的情况。
关于
oracle
分组排序
取值
的
问题
本文介绍了一种SQL技巧,通过使用ROW_NUMBER()函数结合PARTITION BY和ORDER BY子句来实现按指定字段分组并排序后,仅选取每个分组中的第一条记录。
oracle
序列每秒循环,
Oracle
创建序列及循环自增
取值
有关
问题
本文详细介绍了如何在
Oracle
数据库中使用sys权限创建序列,设置最大值、步进值和循环选项,并演示了如何在表中利用序列进行数据插入和查询,包括连续自增
取值
的过程。
Web 开发
81,111
社区成员
341,722
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章