我在学习j2ee的时候使用jdbc连接过ms sql server 2000,开始的时候一切都正常,但是后来遇到了一个很头痛的问题,就是我们在从表中读取数据放到ResultSet中后,读取列值的时候一定的按照列的顺序读取,比如如果表中有三列id, name, address,按条件查询得到的结果放到ResultSet中,显示结果时如果这样写代码
java.sql.ResultSet employees;
while(employees.next()){
employees.getString("address");
employees.getString("name");
}
在运行的时候将会"column can not be re-read"错误,此时把两条语句颠倒就好了(此条只适用于连接MS SQL Server 2000)
连接数据库代码如下:
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
conn =
DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Hotel;User=sa;Password=sa");
// Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// conn = DriverManager.getConnection("jdbc:odbc:hotel");
} catch (SQLException e) {
System.err.println(e);
} catch (ClassNotFoundException e) {
System.err.println(e);
}