Resultset取值,为什么什么都显示不出来???

来源:百度知道 编辑:UC知道 时间:2024/07/01 07:55:06
<%@page import="java.sql.*" %>
<%@ page contentType="text/html;charset=GB2312" %>

<html>

<%

String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:Second";

try
{
Class.forName(driver);
}
catch(Exception e)
{
e.printStackTrace();
}

try
{
Connection con = DriverManager.getConnection(url);
out.print("连接成功。");

Statement smt = con.createStatement();
ResultSet rst = smt.executeQuery("SELECT * from message");

%>

<table width="50%" border="3">

<%
rst.beforeFirst();//移动记录指针到第一条记录之前
out.println("所有记录");
while(rst.next())
{
%>
<tr>
<td><%=rst.getString(1)%></td>
<td><%=rst.ge

用不着“rst.beforeFirst();//移动记录指针到第一条记录之前”这条语句,“rst.next()”已经是把指针移到第一条记录了!删除那条语句就能出来!
后台报的异常:java.sql.SQLException: Result set type is TYPE_FORWARD_ONLY

改成这样试试看:

<%@page import="java.sql.*" %>
<%@ page contentType="text/html;charset=GB2312" %>

<html>

<%

String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:Second";

try
{
Class.forName(driver);
}
catch(Exception e)
{
e.printStackTrace();
}

try
{
Connection con = DriverManager.getConnection(url);
out.print("连接成功。");

Statement smt = con.createStatement();
ResultSet rst = smt.executeQuery("SELECT * from message");


catch(SQLException SE)
{
SE.printStackTrace();
}

%>

<table width="50%"