我有2種模式/如圖所示表:有什麼方法可以引用具有不同數據類型的列?
CREATE TABLE schema1.code_tbl
(code CHAR(6) PRIMARY KEY,
description CHAR(30)
);
CREATE TABLE schema2.record_tbl
(rec_id VARCHAR(10) PRIMARY KEY,
curr_code VARCHAR(6),
remarks VARCHAR(30)
);
我需要CODE_TBL
創建從curr_code
在RECORD_TBL
到code
的外鍵引用。
ALTER TABLE schema2.record_tbl
ADD CONSTRAINT record_code_fk
FOREIGN KEY (curr_code)
REFERENCES schema1.code_tbl (code);
這顯然給了我一個ORA-02267
(列類型與引用的列不兼容)錯誤。
我無法更改CODE_TBL
中的代碼列,因爲我沒有擁有或控制schema1。我無法更改RECORD_TBL
中的curr_code
列,因爲它會破壞我應用程序中的許多功能,因爲我們不考慮尾隨空格。
是否有任何其他方式來強制執行2列之間的參照完整性?
謝謝你的回答。我已經在我的本地設置上進行了測試,效果很好。雖然我的老闆和DBA會批准這樣的措施(改變生產中的表格結構總是有點棘手),但我仍然可以肯定地說,從技術上講這是一個可行的解決方案。 – sml485