2017-02-09 30 views
1

我是新來的DBIC。我已經將數據導入數據庫。無法在表格之間創建關係,因爲顯然,子表格的外鍵列中的所有值都不具有父表格中的對應值。是否可以在沒有關係的數據庫上使用DBIx :: Class?

那麼還可以在表格之間進行連接嗎?我瀏覽了教程和文檔,但沒有發現解決這個問題的東西。

+2

DBIx :: Class的縮寫是DBIC。 DBIx是包含DBI eXtensions的整個CPAN名稱空間。 –

+0

爲什麼你的父表不包含所有引用的行? –

+0

我不完全確定。這應該。我沒有生成數據,它是從文件中導入的。我沒有將多個數據庫(每年一個)導入一個巨型數據庫。我在每一個表上添加了一個「年份」列,我希望它可以用作多列外鍵的一部分,如下所示:'ALTER TABLE'ar_disbursements_emp_off' ADD CONSTRAINT'ar_disbursements_emp_off_fk' FOREIGN KEY('rpt_id','lm2_year ')參考'lm_data'('rpt_id','lm2_year')ON DELETE CASCADE ON UPDATE CASCADE' – StevieD

回答

2

您當然可以在DBIC模式中定義數據庫中沒有匹配約束的關係。 如果使用$ schema-> deploy,它將自動爲所有外鍵列生成約束。

+0

我很困惑。它如何知道哪些列應該是外鍵? – StevieD

+0

定義belongs_to關係時。 –

相關問題