我可以在2个不同的表中使用相同的索引,但在Oracle中的相同列中使用相同的索引

时间:2018-05-11 13:14:42

标签: sql database oracle

我有一个表,需要在Oracle中创建它的副本(包括索引和序列)作为第一个的历史记录。要创建包含其数据的表,我可以这样做:

create table new_table as select * from original_table;

当然,这不会创建原始表所具有的任何索引,序列或触发器。以几种方式创造我能做的一切。我的问题不是如何创建所有这些,而是​​我的问题是以下

  • 由于新创建的表是原始表的副本(列是相同的),我可以使用原始表中存在的相同索引作为新表吗?

1 个答案:

答案 0 :(得分:1)

索引条目指向块中特定位置的记录数据的位置。历史记录表中的数据不能与原始表中的数据位于同一位置,因此指向的位置将永远不会匹配。如果你研究索引在Oracle中的实际工作方式,你就会明白为什么这是不可能的。