编辑varchar2列oracle的字段长度的影响



我要编辑Oracle表中varchar2列的长度(从50到200)。

我正在检查以下Oracle视图,以检测引用此特定列的底层包/表之间可能产生的影响:

  • dba_tab_columns
  • dba_源

我还想过检查一些可能使用该字段的Oracle工作,但我没有发现任何相关内容。

由于我是Oracle的新手,您认为检查以上两个视图就足够了吗?还是我遗漏了什么?

您也可以检查DBA_DEPENDENCIES视图:

DBA_DEPENDENCIES描述了数据库中过程、包、函数、包体和触发器之间的所有依赖关系,包括对在没有任何数据库链接的情况下创建的视图的依赖关系。

尽管它没有这么说,但奇怪的是,它包含了表上的包和触发器依赖关系,所以如果您用referenced_name = '<your table>'查询它,您会看到任何因表更改而无效的内容。其中一些并不重要——如果您有一个带有%type依赖项的参数的过程,它将无效,但在编译后仍能正常工作。

但是,您可以将自己的变量定义为varchar2(50)而不是table.column%type,这些变量将很难找到。该视图中列出的对象将是一个很好的起点,但您可能仍然需要手动检查它们的源以查找类似的问题,而不是等待测试用例失败。

最新更新