2012-11-10 91 views
0

我有兩個表A和B .i要分別在表B的外鍵列中複製或顯示錶A的主鍵列值。有任何方法善意幫助我。將主鍵值複製或顯示爲另一個表作爲外鍵APEX

問候,

+0

那麼你想在表B中使用主鍵作爲外鍵嗎? – user75ponic

+0

不,我想調用或顯示錶A的主鍵值作爲表B中的外鍵值 –

+1

您可以更具體地說明您正在查找的內容,還是提供您的預期輸出以及一些示例數據? – user75ponic

回答

1

您可以在填充表B或使用,當你填入表A

CREATE TABLE t1 (id1 NUMBER, dt DATE); 

ALTER TABLE t1 ADD (
    CONSTRAINT t1_pk 
PRIMARY KEY 
(id1)); 


CREATE TABLE t2 (id2 NUMBER, id1 NUMBER, dt2 DATE); 

ALTER TABLE t2 ADD (
    CONSTRAINT t2_pk 
PRIMARY KEY 
(id2)); 
ALTER TABLE t2 
ADD CONSTRAINT t2_r01 
FOREIGN KEY (id2) 
REFERENCES t1 (id1); 

第一種方法觸發填充您的主鍵值,通過這種方式,你可以填充第二表格,當你插入值。

INSERT INTO t1 
    VALUES (1, SYSDATE 
      ); 

INSERT INTO t2 
    VALUES (1, 1, SYSDATE 
      ); 

隨着觸發器,因此,當值被插入到第一表第二表中的值是使用觸發器填充。所以第一個表的主鍵值被插入到表2的外鍵中。

CREATE OR REPLACE TRIGGER my_trigger 
    AFTER INSERT 
    ON t1 
    FOR EACH ROW 
BEGIN 
    INSERT INTO t2 
     VALUES (1, :new.id1, SYSDATE 
       ); 
EXCEPTION 
    WHEN NO_DATA_FOUND 
    THEN 
     DBMS_OUTPUT.put_line (TO_CHAR (SQLERRM (-20299))); 
    WHEN OTHERS 
    THEN 
     DBMS_OUTPUT.put_line (TO_CHAR (SQLERRM (-20298))); 
END; 
+0

值我讓這個觸發器代碼...謝謝 –

+0

你好....這是一個問題我將這些值插入表格 –

+0

@MuhammadUsman然後,它更簡單,無論是在項目級別還是頁面級別插入表格1時,同時插入到表格2中。在APEX中有幾個選項可以做到這一點。 – user75ponic

相關問題