小编Hor*_*ndo的帖子

查找虚拟列表达式引用的列

有谁知道任何包含“真实”列到虚拟列的引用的 Oracle 字典视图?

例如,假设我有一个这样的表:

create table t (
 c1 varchar2(5)
 ,c2 as (c1 || '*')
 )
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种确定 c1 具有 c2 依赖项的方法(不尝试解析 user_tab_cols.data_default)。我正在编写一个模式同步工具,我正在尝试弄清楚我需要做什么才能将表与执行最少工作的“模型”同步。如果模型显示上表中的 c1 从 varchar2(5) 更改为 varchar2(6),我希望能够确定我需要执行以下操作:

alter table t modify( c2 as ( null ) );
alter table t modify( c1 varchar2(6) );
alter table t modify( c2 as ( c1 || '*' ) );
Run Code Online (Sandbox Code Playgroud)

并避免使用 ORA-54031。

[编辑]

似乎我在解释我的问题时不够清楚,所以这里是。

当我们的开发人员开始处理错误时,他们会创建应用程序的 git 分支以及填充了主 git 分支内容的数据库模式。在处理 bug 时,开发人员可能会进行 DML 更改或偶尔会进行 DDL 更改(当然还有代码更改)。一旦他们的 bug 完成并被审查,他们的 git 分支就会与 master 合并。同步工具允许对数据库模式进行完整的“差异”——从内容和结构的角度来看。这构成了审查的一部分。开发人员使用同步工具生成其架构的导出,此导出是分支的一部分。在 bug 分支合并到 master …

oracle virtual-columns

6
推荐指数
1
解决办法
5525
查看次数

标签 统计

oracle ×1

virtual-columns ×1