【发布时间】:2011-03-31 21:35:20
【问题描述】:
我使用
将我的 PostgresQL 数据库从一个硬盘驱动器移动到另一个硬盘驱动器pg_dump -U postgres db_name > db_name.dump
然后
psql -U postgres db_name < db_name.dump
我在两个实例中都以相同的方式创建了数据库 db_name。在新数据库中,当我使用 JPA 查询(或 JDBC 查询)运行我的 Java 程序时,我收到此错误:
"ERROR: relation "table1" does not exist"
查询是:
select count(0) from table1
我知道我已经建立了连接,因为如果我更改连接参数中的密码,我会收到错误消息。
由于某些原因,在新的 PostgresQL 实例中,它认为 table1 在导入的架构中不存在。
如果我将查询更改为
从 myschema.table1 中选择 count(0)
然后它抱怨权限:
"ERROR: permission denied for schema myschema"
为什么权限会不同?
表 table1 存在于 myschema 中,因为我可以在 pgAdmin 工具中看到它。所有的行都被导入到新的 PostgresQL 实例中。
当我从 Java 执行查询时,pg_dump 和 psql 的组合产生了问题。
我需要做什么来解决这个问题?
提前致谢。
【问题讨论】:
标签: postgresql jpa jdbc