为什么我的结果集不可更新?
我在Bean里是这样写的
try
{
conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
stmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery();
}catch(SQLException e)
{
System.err.println("myBean().executeQuery:"+e.getMessage());
}
可是在JSP里却说不可更新的结果集,这是为什么呢?现在我的整体概念还没建立,很想和水平比较高的兄弟姐妹们聊聊,也请教一下困惑心头的问题。我问问题态度谦虚、表现良好,且不耻下问(问的太弱智只好这么说),不知道有没有人肯和我互通有无。多一个朋友,没错的(说的跟征婚似的)。我的QQ是38563938,希望大家不吝赐教。这里先谢过了。
问题点数:20、回复次数:3Top
1 楼zhaoweiemail(剑心)回复于 2002-07-30 14:59:26 得分 0
你用的是什么数据库。Top
2 楼xujinglei((表情很漠然,处事很泰然))回复于 2002-07-30 15:05:39 得分 0
我用的是ORACLE,数据库连接没问题,我把JSP文件贴出来大家挑挑错吧!<%@page contentType="text/html;charset=gb2312"%>
<%@ page language="java" import="oracle.jdbc.driver.*" %>
<%@ page import="java.sql.*,java.util.Date"%>
<%@ page import="com.jspsmart.upload.*"%>
<jsp:useBean id="conn" scope="page" class="test1.myBean" />
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />
<HTML>
<HEAD>
<link rel="stylesheet" href="../public/style.css" type="text/css">
<TITLE>新闻提交</TITLE>
</HEAD>
<BODY>
<SCRIPT language="JavaScript" src="../public/admintop.js"></SCRIPT>
<BR>
<%!
public String getStr(String str)
{
try
{
String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t);
return temp;
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
return "null";
}
%>
<%
String Title = null;
String Sender = null;
String Content = null;
String endtime = null;
String ey = null;
String em = null;
String ed = null;
ResultSet rs = null;
String sql = null;
String sqlquery = null;
com.jspsmart.upload.File myFile;
mySmartUpload.initialize(pageContext);
mySmartUpload.upload();
Title = mySmartUpload.getRequest().getParameter("Title");
Sender = mySmartUpload.getRequest().getParameter("Sender");
Content = mySmartUpload.getRequest().getParameter("Content");
ey = mySmartUpload.getRequest().getParameter("ey");
em = mySmartUpload.getRequest().getParameter("em");
ed = mySmartUpload.getRequest().getParameter("ed");
endtime = ey+"-"+em+"-"+ed;
sql = "INSERT INTO w_news (ID,Title,Content,Sender,StartTime,EndTime) VALUES(w_news_id.NEXTVAL,'"+Title+"','"+Content+"','"+Sender+"',sysdate,To_date('"+endtime+"','YYYY-MM-DD'))";
sqlquery = "select * from w_news order by id";
out.println(Title);
out.println(endtime);
/*try{
conn.executeInsert(sql);
}catch(Exception e){
out.println("插入普通数据出错:"+e.getMessage());
}*/
try{
rs = conn.executeQuery(sqlquery);
rs.moveToInsertRow();
rs.updateString("id","w_news_id.nextval");
rs.updateString("title",Title);
rs.updateString("sender",Sender);
rs.updateString("endtime","To date('"+endtime+"','YYYY-MM-DD')");
}catch(Exception e){
out.println("查询时出错:"+e.getMessage());
}
myFile = mySmartUpload.getFiles().getFile(0);out.println(myFile.getFileName());
if(!myFile.isMissing()){
try{
myFile.fileToField(rs,"pic");
rs.updateRow();
}catch(Exception e){
out.println("将图片存入的时候出现了以下错误:"+e.getMessage());
}
%>
<jsp:include page="success.html"/>
<%
}
else
{
%>
<jsp:include page="sorry.html"/>
<%
}
%>
有什么问题请大家多提意见呀!
Top
3 楼Andrawu(晓彬)回复于 2002-07-30 15:09:31 得分 20
可能是你的drvier不支持jdbc2.0中的ResultSet.CONCUR_UPDATABLE
试试以下连接的方法。
http://www.csdn.net/expert/topic/876/876147.xml?temp=.5211298Top




