1 oracle
我有一个包含大量记录(超过 15M)的表,我正在执行一个更改查询以向表中添加 2 列。 查询大约需要 1 小时才能完成执行。 所以我的问题是:alter 是如何工作的?为什么会受到记录数的影响? 是否可以使用列索引加速更改查询?
小智 5
向表中添加列的 ALTER TABLE 操作应该是仅更新简单数据字典。Oracle 没有理由访问表中的所有块/行。所以,操作应该非常快。(亚秒级响应时间。)
唯一的例外是,如果您使用的是 11g 之前的 Oracle 版本,并且您为要添加的列设置了默认值,则 Oracle 必须访问所有行。在 11g 中,即使设置默认值也不会沉淀对表中所有行的访问。
归档时间:
13 年,10 月 前
查看次数:
123 次
最近记录: