我的問題是,用於主鍵索引的表空間與用於表本身的表空間不同。 Oracle會使用這個索引還是變得不可用?用於索引的Oracle數據庫不同表空間
因爲當我試圖將模式導入到包含該表的Oracle。 Oracle抱怨警告稱該主鍵的索引不可用。我已經通過更改表空間修復了主鍵索引的模式,並再次導出它,並將其導入到數據庫中而沒有警告。
這是否意味着主鍵索引表空間必須始終與表本身的表空間相同?或者是否適用於任何類型的索引(例如列索引)?
此規則是否也適用於DB2?
我的問題是,用於主鍵索引的表空間與用於表本身的表空間不同。 Oracle會使用這個索引還是變得不可用?用於索引的Oracle數據庫不同表空間
因爲當我試圖將模式導入到包含該表的Oracle。 Oracle抱怨警告稱該主鍵的索引不可用。我已經通過更改表空間修復了主鍵索引的模式,並再次導出它,並將其導入到數據庫中而沒有警告。
這是否意味着主鍵索引表空間必須始終與表本身的表空間相同?或者是否適用於任何類型的索引(例如列索引)?
此規則是否也適用於DB2?
將索引和數據存儲在不同的表空間中是完全可以接受的。當您執行以下操作時會發生什麼:
alter index index_name rebuild;
之後索引仍然不可用?如果沒有,請在表格上檢查您的導入參數。例如,SQL * Loader可以通過直接路徑加載使索引無效(這只是一個猜測,你沒有提到你如何加載數據)。
如果索引仍然不可用,請檢查數據異常,尤其是重複鍵。希望你解決它!
改變索引重建有訣竅。感謝您的提示 – Troydm 2010-11-19 19:18:20
對於DB2,將索引和表存儲在不同的表空間中也不是問題。但是,在大多數情況下,您必須在表創建時指定索引表空間。 – 2010-11-19 23:20:04