jsp上传问题,7天了,我绝望了,兄弟们,我……

henry_t 2002-05-29 08:16:32
我用jspsmartupload处理上传,大家知道上面有例子,是关于mysql的,我用的是oracle,所以把驱动改了,表的结构和字段一模一样。如下:

<%@ page language="java" import="java.sql.*,oracle.sql.*,com.jspsmart.upload.*"%>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />

<HTML>
<BODY BGCOLOR="white">

<H1>jspSmartUpload : Sample 4</H1>
<HR>

<%
//ResultSet.TYPE_FORWARD_ONLY ,ResultSet.CONCUR_UPDATABLE
// Variables
int count=0;

// Connect to the database
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@www.ffff.org:1521:oracle","fff","fff");

// SQL Request
Statement stmt = con.createStatement(ResultSet.TYPE_FORWARD_ONLY ,ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("SELECT * FROM TFILES WHERE ID=1");

// if the resultset is not null
if (rs.next()){

// Initialization
mySmartUpload.initialize(pageContext);

// Upload
mySmartUpload.upload();

// upload file in the DB if this file is not missing
if (!mySmartUpload.getFiles().getFile(0).isMissing()){

try {

rs.updateString("FILENAME",mySmartUpload.getFiles().getFile(0).getFileName());

// Add the current file in the DB field
mySmartUpload.getFiles().getFile(0).fileToField(rs,"FILE");

// Update
rs.updateRow();
count++;

} catch(Exception e) {
out.println("An error occurs : " + e.toString());
}

}

}

// Display the number of files uploaded
out.println(count + " file(s) uploaded in the database.");

rs.close();
stmt.close();
con.close();

%>

</BODY>
</HTML>



异常如下:




An error occurs : java.sql.SQLException: Invalid operation for read only resultset: updateString 0 file(s) uploaded in the database



怎么回事?明明Statement stmt = con.createStatement(ResultSet.TYPE_FORWARD_ONLY ,ResultSet.CONCUR_UPDATABLE);

原来的例子(mysql)用得很顺利。

被蹩得没法子了,大家能体会我的心情吧,帮我分析一下,看是什么问题,
我以为是驱动不支持结果集可修改,可换了两个还是劳样子,是这问题吗?
如果谁的办法能帮我解决,我发毒誓给至少500,发新贴给!!!当然
空口无凭,但请相信我!!!!!!!!!!!
...全文
34 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
henry_t 2002-05-29
  • 打赏
  • 举报
回复
你能不能具体一点啊,求你了!!!!!!!!!!!!!!!!!!!
zhangxiaogen 2002-05-29
  • 打赏
  • 举报
回复
就是你的驱动或者数据库不支持ResultSet.CONCUR_UPDATABLE,在通常的情况下,不支持JDBC2的数据库在con.createStatement方法中会使用只读的ResultSet来替代。你将你的程序更改成使用jdbc1.0支持的方法应该就没有这个问题了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧