Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 向现有表中添加新列的效果_Oracle - Fatal编程技术网

Oracle 向现有表中添加新列的效果

Oracle 向现有表中添加新列的效果,oracle,Oracle,在我的项目中有一个新的需求,我必须向现有表中添加两个新列 如何分析在此表中添加两个新列的效果 请注意: 我已经使用all_dependencies视图找到了所有依赖项,而且我还使用all_source查找了一些更多的信息 你能告诉我在这个项目中应该采取什么样的正确方法吗 编辑1:因为这个问题吸引了很多负面因素。我想根据你的建议改进 如果开发人员在视图/触发器/过程中使用了正确的列名,则添加列不会影响视图/触发器/过程。但是,如果有人在任何视图/过程/触发器中使用了select*from_表,那么

在我的项目中有一个新的需求,我必须向现有表中添加两个新列

如何分析在此表中添加两个新列的效果

请注意: 我已经使用all_dependencies视图找到了所有依赖项,而且我还使用all_source查找了一些更多的信息

你能告诉我在这个项目中应该采取什么样的正确方法吗


编辑1:因为这个问题吸引了很多负面因素。我想根据你的建议改进

如果开发人员在视图/触发器/过程中使用了正确的列名,则添加列不会影响视图/触发器/过程。但是,如果有人在任何视图/过程/触发器中使用了
select*from_表
,那么您可能会遇到麻烦

你已经走上了正确的道路。只需正确检查
dba\u源代码即可。假设您的表名为
schema1.table1
,则使用
where-upper(text)如“%table1%”在
all\u-source
中进行搜索


另外,如果在其他数据库中有到您的数据库的
dblink
,那么您可能也需要注意这一点。

对于视图来说,这并不重要。
create视图中的
select*
将扩展到创建视图时有效的列列表。
*
将不会存储在视图定义中,谢谢您的解决方案。@a_horse_,没有名称-同意这一点。但是,如果在proc/trigger中使用与插入xyz(col1,col2)相同的视图,从视图中选择*则特定的proc/trigger可能会失败。因此,最好在
视图
级别解决它。