2017-02-16 91 views
0

我有一個導出表空間的轉儲文件。現在我試圖從具有外鍵等依賴關係的轉儲中導入一個表。我如何導入表(我不知道依賴關係),有沒有辦法找到這些依賴關係,並沿着我現在導入的表導入它們?如何導入依賴項對象

回答

0

如果您使用imp(import),那麼缺省值將導入約束以及您選擇的表。

要查找的約束(包括外鍵),在源數據庫上運行此:

SELECT CONSTRAINT_NAME 
FROM DBA_CONSTRAINTS 
WHERE 
    R_CONSTRAINT_NAME IN 
    (SELECT CONSTRAINT_NAME 
    FROM DBA_CONSTRAINTS 
    WHERE CONSTRAINT_TYPE IN ('P','U') 
    AND TABLE_NAME IN 
    (
    '<table_name>' 
)); 

如果使用DP(數據泵),那麼它是在選擇表導入的正確順序更好,消除外鍵問題。

使用舊的IMP(導入),我曾經有時會禁用所有外鍵,然後在導入後'啓用novalidate'。