postgreSQL数据库遵守SQL标准,表名库名不区分大小写。
数据库中是存在 gongan_address_ALL的表的,但是执行下列代码就会出错。
1 stmt = c.createStatement(); 2 String sql = "SELECT * FROM gongan_address_ALL "; 3 ResultSet rs = stmt.executeQuery( sql );
报错为org.postgresql.util.PSQLException: ERROR: relation "gongan_address_all" does not exist
这是由于表名被自动转成了小写,执行的是查找 gongan_address_all 表的操作,所以会找不到。
解决方法就是修改成:
stmt = c.createStatement(); String sql = "SELECT * FROM \"gongan_address_ALL\""; ResultSet rs = stmt.executeQuery( sql );
双引号必须在表名前后不能是:
String sql = "SELECT * FROM gongan_address_\"ALL\"";