我知道我可以在Oracle开发中使用Tools
-> Database Diff
来比较两种Oracle模式。它将打开以下向导:
会比较你查过的所有东西。
我目前面临的问题是,我只想比较模式(表、约束等)。它本身。除了表中的数据之外。所有的数据加在一起都超过了1GB的INSERT INTO
语句(我甚至无法将这些语句加载到SqlPlus中,因此我不得不使用SqlPlus来插入它),而且它目前已经运行了1小时,Database Diff
没有结果。
因为我想比较它的数据库是空的,所以我只想比较实际的表,而不是表中的数据。
这在Oracle SQL Developer中是可能的吗?
如果没有,我想我将不得不使用另一种方法来检查是否有任何差异。要么是一个不同的工具,要么是在没有数据的情况下导出两个模式,然后比较这两个文件(不包括时间戳之类的文件),或者用数据复制现有的数据库--清空它--然后与Database Diff
进行比较。这里有一些工作,但我只是想知道,如果没有表数据,是否可以使用Database Diff
。
PS:我想检查它们是否相同的原因:我的一位同事创建了Liquibase脚本来创建数据库,我想通过将它与我们已经拥有的数据库(与数据)进行比较来检查一切是否正确。
发布于 2017-05-05 12:47:38
SQL的Database不对表中的数据进行比较,只比较表定义。
如果您在默认情况下检查“表”,请比较所有表。
但是,如果在“继续向导”对话框页中指定了一个或多个表,则只能比较这些表。
您的输出报告将如下所示-注意,没有提到任何两个表或视图之间的行如何不同。
https://dba.stackexchange.com/questions/172804
复制相似问题