虽然查询应返回整个表,但ResultSet为空。这是我的代码
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection("jdbc:sqlserver://localhost","somonjon","sa");
con.setCatalog("ChatDBS");
Statement stmt = null;
String SQL = "SELECT * FROM Login_chat";
stmt = con.createStatement();
try{
System.out.println("trying execute query");
rs = stmt.executeQuery(SQL);
}
catch(SQLException ex){
ex.printStackTrace();
}
这是错误消息: 尝试执行查询 com.microsoft.sqlserver.jdbc.SQLServerException:结果集没有当前行。
P.S。 Okey家伙我不确定它是否重要,但这些代码是jButton1ActionPerformed事件。
答案 0 :(得分:0)
AFAIK,除非你在结果集上做一些操作,比如rs.next();否则你不会想要得到这个异常。
关于问题,可能有两种情况
答案 1 :(得分:0)
你必须循环通过rs。
String column1;
int column2;
while (rs.next()) {
column1 = rs.getString("nameColumn1");
column2 = rs.getInt("nameColumn2");
}
答案 2 :(得分:0)
好的,在
String SQL = "SELECT * FROM Login_chat";
您必须添加“;”。
String SQL = "SELECT * FROM Login_chat;";
试试吧!