【问题标题】:How to compare 2 oracle schema script files?如何比较 2 个 oracle 模式脚本文件?
【发布时间】:2013-07-29 19:33:27
【问题描述】:

给定 2 个 Oracle 架构脚本文件,我能否客观地比较它们没有在 Oracle 服务器上创建和运行的真实架构?

我正在寻找一种方法来比较 2 个模式脚本文件并作为回报接收同步脚本,而无需在 Oracle 服务器上真正创建它们。

我曾想过在运行时为该任务创建一个临时的内存模式,但这可能有点过头了,我想看看你的建议。

有可能吗?有一些已知的工具可以完成这项任务吗?

更新:重要的是要注意,我不是在寻找文本差异,而是在寻找模式对象(表、列、过程等)比较。

【问题讨论】:

  • 一切皆有可能,但我猜你必须弄清楚如何将脚本解析为对象模型,然后比较差异并将其解释为创建、更改和删除语句。由于它们必须是特定于 Oracle 的,我会认为任何现有工具(如 SQL Developer 的模式比较向导)都将基于 DB 模式而不是平面文件,后者可能具有要处理的可变格式等。正在运行将脚本分成两个模式真的有这样的问题吗?
  • @AlexPoole 我想创建一个自动工具,只需单击几下即可为我提供同步脚本。

标签: oracle database-schema


【解决方案1】:

我正在使用 WinMerge 工具来执行此任务。使用该工具,您可以比较两个文本文件,它会显示这些文件的差异。但是合并过程必须手动完成(我不得不说我的文件没有那么大),但到目前为止我还没有找到一个好的工具。

最好的祝福

【讨论】:

  • 我不是在寻找文本差异,而是寻找模式对象(表、列等)差异,
  • 您在谈论脚本文件。而且这些实际上是我脑海中的文本文件,所以我很抱歉错过了这个问题。
  • 我认为 SyBase PowerDesigner 等工具能够导入模式文件并生成它们的差异。但我猜你正在寻找一个开源产品。我实际上不知道任何具有此功能的开源项目
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-16
  • 1970-01-01
  • 2019-10-31
  • 1970-01-01
相关资源
最近更新 更多