ResultSet rs = DbConn.getInstance().doQuery("Select d.deptId from Depts d"); while (rs.next()){ System.out.println(rs.getInt("d.deptId"));
org.postgresql.util.PSQLException: The column name d.deptId was not found in this ResultSet.
ResultSet rs = DbConn.getInstance().doQuery("Select d.deptId from Depts d"); while (rs.next()){ System.out.println(rs.getInt("deptId"));
除了去掉“D”之外,有没有办法。从第一个查询开始,使第一个代码段不抛出错误消息?
以下是源代码:
public class JoinTest {
@Test
public void test(){
boolean pass = false;
try {
ResultSet rs = DbConn.getInstance().doQuery("Select d.deptId from Depts d");
String label = rs.getMetaData().getColumnLabel(1); // What do you get?
System.out.println("label = " + label);
while (rs.next()){
System.out.println(rs.getInt("d.deptId"));
pass = true;
}
} catch (SQLException e) {
e.printStackTrace();
pass=false;
}
assertTrue(pass);
}
@Test
public void test2(){
boolean pass = false;
try {
ResultSet rs = DbConn.getInstance().doQuery("Select d.deptId from Depts d");
while (rs.next()){
System.out.println(rs.getInt("deptId"));
pass = true;
}
} catch (SQLException e) {
e.printStackTrace();
pass=false;
}
assertTrue(pass);
}
}
public class DbConn {
private static String url = "jdbc:postgresql://server:port/schema";
private static Properties props = new Properties(); {
props.setProperty("user","userid");
props.setProperty("password","passwprd");
}
private Connection conn;
private DbConn(){}
private static DbConn instance;
public static DbConn getInstance() throws SQLException{
if (instance == null){
instance = new DbConn();
instance.conn = DriverManager.getConnection(url, props);
}
return instance;
}
public ResultSet doQuery(String query) throws SQLException{
Logger.log("DbConn.doQuery: " + query);
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
return rs;
}
}
}
查询:
select d.deptId from Depts d
生成一个结果别名为“DEPTID”的单列resultset。没有“.deptid”列。如果您想要一个,您可以请求它作为列别名:
select d.deptId AS "d.deptId" from Depts d
PgJDBC对此无能为力,因为它不知道resultset列“deptid”与select-list中的“.deptid”相关。对it进行这方面的教学将迫使it对SQL it过程的理解远远超出预期,并导致维护和性能方面的挑战。
问题内容: 我收到以下错误:org.postgresql.util.PSQLException:在此ResultSet中找不到列名usuario。 但是,我在适当的类中正确声明了以下usuario列! UsuariosGruposDAO.class UsuariosGrupos.class 错误出现在以下行: 我的List方法: 奇怪的是,当我分别测试我的列表时,数据表会显示适当的结果。但是,当我
我在数据库中有以下内容: 我的实体是: 查看许多帖子,我似乎对cmodel字段有正确的注释。 更新(完成stacktrace):
如果一列存在于两个数据帧之间,我想删除它。我检查它是否存在,然后尝试删除它,但它说找不到。 错误:
我试图使用它们的共同点将两个表连接在一起,但是我一直在找不到特定的列,我可以清楚地看到该列在那里。
问题内容: 我试图找出为什么我的Web应用程序抛出一个 当我从中复制配置的一个姐妹悄悄地运行时。 我有: 通过右键单击并选择“新的持久性”从netbeans创建一个新的持久性,我不在乎我提供的实际值,但只需要在正确的目录中创建persistence.xml文件即可。 如下编辑我的context.xml,以匹配工作姐妹项目中的那个 编辑了我的web.xml以包含资源DataSource,如下所示 如