【问题标题】:Best Practice for adding columns to a Table in Oracle database在 Oracle 数据库中向表中添加列的最佳实践
【发布时间】:2015-08-23 11:20:50
【问题描述】:

我遇到了需要在表中添加一列的情况。向生产系统中的现有表添加列的行业最佳实践是什么。

  1. 默认在最后
  2. 在适当的位置
  3. 在表的审核字段之前

我们的数据建模器已添加该列并选择了默认选项。如果频繁使用添加的列,是否会影响性能。

开发始终在审计字段之前添加列作为标准的脚本的努力是什么?

任何帮助将不胜感激。

【问题讨论】:

  • 要在除末尾之外的任何位置添加列,您必须重命名或备份原始表,创建新结构,然后将数据导入回来。不好玩...除非您有非常令人信服的理由将列放在中间,否则将其放在最后并使用视图或其他机制重新定位列。

标签: sql oracle data-modeling


【解决方案1】:

在 Oracle 中无法确定新列的位置。 (好吧,除非您删除并重新创建新表)。 请注意,列的顺序与性能问题无关。

【讨论】:

  • 大部分是的,列的顺序对性能几乎没有影响。但是,如果新添加的列导致行链接/迁移,如果我们的最后一列大多为 NOT NULL,并且在它/它们之前大部分为 NULL,则性能会下降。列的顺序对存储的影响比对性能的影响更大。因此,请考虑将大部分 NULL 列放在最后。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-14
  • 2011-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-17
相关资源
最近更新 更多