我需要检查两个具有相同名称但处于不同模式的表中数据之间的差异。我有两个模式:Database1和Database2,在第一个模式中我有TABLE_TEST,在第二个模式中我也有TABLE_TEST。表内的数据彼此之间有一些差异。我需要找出那些差异。我尝试过的是上面的查询,但它抛出此错误
ORA-00942:表或视图不存在
00942. 00000-“表或视图不存在”
SELECT *
FROM Database1.TABLE_TEST
INNER JOIN Database2.TABLE_TEST
ON Database1.TABLE_TEST.ID = Database2.TABLE_TEST.ID;
表格的外观以及我需要显示为差异的内容
答案 0 :(得分:2)
假设您以DATABASE1
用户的身份连接。
DATABASE2
用户必须
grant select on table_test to database1;
以便database1
可以选择其数据。
然后,您编写的查询应该可以正常工作(database1
前缀不是必需的,但不会造成任何危害)。
SELECT *
FROM Database1.TABLE_TEST
INNER JOIN Database2.TABLE_TEST
ON Database1.TABLE_TEST.ID = Database2.TABLE_TEST.ID;