【发布时间】:2022-02-12 01:20:26
【问题描述】:
是否可以在 Oracle 中基于架构中的现有表以及具有该表的更新定义的 CREATE TABLE 语句生成一堆 ALTER TABLE 语句?
假设我有一个包含以前版本的应用程序的架构。我有一个最新版本的应用程序的安装脚本。该脚本从头开始创建所有表和序列,执行CREATE TABLE(可能还有CREATE SEQUENCE)语句。
我想在不丢失任何数据的情况下将架构更新到应用程序的最新版本(例如,不执行DROP TABLE)。
是否可以使用标准 Oracle 11gR2 或第三方组件?
【问题讨论】:
-
没有我会 100% 信任的工具来做到这一点。但是一些使用 DBMS_METADATA_DIFF 的小脚本可能会帮助您完成大部分工作。根据您要查找的内容,此问题与 this question 重复。
-
@Jon Heller 不是 DBMS_METADATA_DIFF 额外费用选项吗?
-
@Politank-Z,我的问题不是关于迁移,而是关于正常安装的自动化。我看到了这个问题,但它问的是比较两个模式(源和目标),而我的问题是关于比较一个模式和
CREATE TABLE。 -
@ibre5041 是的,它需要 Oracle 变更管理包。
标签: oracle oracle11g ddl oracle11gr2