Sql 如何重新创建索引组织的表?
在Oracle10g数据库中,我希望重新创建一个表(维护其所有数据)作为索引。做这件事最简单的方法是什么?你能让自己休息一下吗?或者,在执行此操作时,该表是否需要联机?停机时间无关紧要,该表可以脱机而不出现任何问题。太棒了,我想这正是我想要的,我稍后会尝试。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
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.