例子如下
<%@ page language="java" import="java.sql.*" %><%
Connection conn = null; String url="jdbc:odbc:t2";
String username="sa";
String password="shylsz";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection(url,username,password); String sql;
try{
Statement stmt=conn.createStatement();
Statement stmt2=conn.createStatement();
sql="select * from t_nyxx ";
ResultSet rs3 = null;
ResultSet rs4 = null;
rs3=stmt.executeQuery(sql);
rs3.next();
out.println(sql + "*********");
sql="select * from t_nydub";
out.println(sql + "*********");
rs4=stmt.executeQuery(sql);
rs4.close();
out.println( "2*********");
rs3.next(); sql="insert into t_jfmxd values()";
out.println(sql + "*********");
}
catch(Exception ex)
{
System.err.println(ex.getMessage());
}
%>结果只显示select * from t_nyxx ********* select * from t_nydub********* 2*********
后面的insert into t_jfmxd values()无法显示
<%@ page language="java" import="java.sql.*" %><%
Connection conn = null; String url="jdbc:odbc:t2";
String username="sa";
String password="shylsz";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection(url,username,password); String sql;
try{
Statement stmt=conn.createStatement();
Statement stmt2=conn.createStatement();
sql="select * from t_nyxx ";
ResultSet rs3 = null;
ResultSet rs4 = null;
rs3=stmt.executeQuery(sql);
rs3.next();
out.println(sql + "*********");
sql="select * from t_nydub";
out.println(sql + "*********");
rs4=stmt.executeQuery(sql);
rs4.close();
out.println( "2*********");
rs3.next(); sql="insert into t_jfmxd values()";
out.println(sql + "*********");
}
catch(Exception ex)
{
System.err.println(ex.getMessage());
}
%>结果只显示select * from t_nyxx ********* select * from t_nydub********* 2*********
后面的insert into t_jfmxd values()无法显示
原来要实现以下功能的
rs3=stmt.executeQuery(sql);
out.println(sql + "*********");
while (rs3.next())
{
out.println(1 + "*********");
sql="select * from t_nydub order by read_date Desc";
out.println(sql + "*********");
rs4=stmt.executeQuery(sql);
rs4.close();
out.println( "2*********"); }sql="insert into t_jfmxd values()";
out.println(sql + "*********");
这里就必须2个rs交叉处理的啊
也可QQ联系2854401或msn:[email protected]
找出原因马上发分
Statement stmt2=conn.createStatement();
rs1=stmt.executeQuery(sql);
rs2=stmt2.executeQuery(sql);
rs1.next()这样就没问题了。
发现你在2楼的程序,逻辑好象很有问题,
String sql;
try{
Statement stmt1=conn.createStatement();
Statement stmt2=conn.createStatement();
ResultSet rs1 = null;
ResultSet rs2 = null;
sql_1="select * from t_aaaa ";
rs1=stmt1.executeQuery(sql_1);
while (rs3.next())
{
sql_2="select * from t_cccc";
out.println("t_cccc" + sql_2 );
rs2=stmt2.executeQuery(sql_2);
//你要rs2干什么?
}
sql="insert into t_dddd values()";
out.println(sql + "*********");
}catch()
我这么粘出来是想让大家好找原因啊。
rs1=stmt1.executeQuery(sql_1);
while (rs3.next())
{
sql_2="select * from t_cccc";
out.println("t_cccc" + sql_2 );
rs2=stmt2.executeQuery(sql_2);
/*
分类求和、统计
*/
}
sql="insert into t_dddd values()";
out.println(sql + "*********");
然后rs2=stmt2.executeQuery(sql);这样就可以了