我正在使用eclipse执行java程序,以便与MySQL进行简单的JDBC连接,代码如下:
package samm;
import java.sql.*;
public class Sd {
public static void main(String args[]) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/sam", "root", "1234");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from sam1");
while (rs.next()) {
System.out.println(rs.getInt(1) + " " + rs.getString(2) + " " + rs.getString(3));
}
con.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
我无法执行并获得所需的结果,但相反,我收到一条错误消息:“打印ASM代码以生成给定的类。 用法:ASMifier [-debug]“
答案 0 :(得分:0)
此行可能会出现问题:
System.out.println(rs.getInt(1) + " " + rs.getString(2) + " " + rs.getString(3));
为什么因为在查询中定义属性名称时使用了这种方式,而不是:
select * from sam1
您的查询应如下所示:
select attribute1, attribute2, attribute3 from sam1
第二种解决方案,而不是定义属性的索引,您可以使用您的查询,但您必须更改:
rs.getInt(1)
对此:
rs.getInt("name_of_the_attribute");// for example rs.getInt("id")