Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.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
Sql 如何重新创建索引组织的表?_Sql_Oracle_Oracle10g - Fatal编程技术网

Sql 如何重新创建索引组织的表?

Sql 如何重新创建索引组织的表?,sql,oracle,oracle10g,Sql,Oracle,Oracle10g,在Oracle10g数据库中,我希望重新创建一个表(维护其所有数据)作为索引。做这件事最简单的方法是什么?你能让自己休息一下吗?或者,在执行此操作时,该表是否需要联机?停机时间无关紧要,该表可以脱机而不出现任何问题。太棒了,我想这正是我想要的,我稍后会尝试。 RENAME EXISTING_TABLE TO OLD_HEAP_TABLE; CREATE TABLE NEW_IOT_TABLE AS ([COLUMNS FROM EXISTING TABLE] CONSTRAINT NEW

在Oracle10g数据库中,我希望重新创建一个表(维护其所有数据)作为索引。做这件事最简单的方法是什么?

你能让自己休息一下吗?或者,在执行此操作时,该表是否需要联机?停机时间无关紧要,该表可以脱机而不出现任何问题。太棒了,我想这正是我想要的,我稍后会尝试。
RENAME EXISTING_TABLE TO OLD_HEAP_TABLE;

CREATE TABLE NEW_IOT_TABLE AS
 ([COLUMNS FROM EXISTING TABLE]
  CONSTRAINT NEW_IOT_TABLE_PK PRIMARY KEY ([PK_COLUMNS FROM EXISTING TABLE]
 )
 ORGANIZATION INDEX;


INSERT INTO NEW_IOT_TABLE
SELECT * FROM OLD_HEAP_TABLE;

COMMIT;

RENAME NEW_IOT_TABLE TO EXISTING_TABLE;

-- DROP OLD_HEAP_TABLE when you're sure it all worked.