2017-07-18 75 views
-2

我是PostgreSQL的新手,所以放輕鬆點。 我有兩個具有相同行數的表。這兩個表共享列的屬性需要相同。我想要的是當我更新示例表格1的列時,自動更新表格2的列。對不起,我的英語我希望你能理解我的問題。自動更新兩張表

+0

您應該使用Trigger-'AFTER INSERT ON example_table_1'。如果您將發佈表格結構並解釋您的確切需求,您將得到更有幫助的答案。 –

+0

您可以瞭解更多關於觸發器[這裏](https://www.postgresql.org/docs/current/static/plpgsql-trigger.html) – Sevanteri

+0

請** [編輯] **您的問題,並添加一些示例數據和基於該數據的預期輸出。 [**格式化文本**](http://stackoverflow.com/help/formatting)請,[**沒有屏幕截圖**](http://meta.stackoverflow.com/questions/285551/why-may -i-不上傳圖像-的代碼上那麼當灰化-A-問題/ 285557#285557)。 ** [**]您的問題 - 請勿**在論壇中發佈代碼或其他信息。 –

回答

1

正如在評論中提到的那樣,您可以創建一個觸發器,在更新表1時更新表2。

但我會說,你應該擺脫首先導致問題的數據冗餘。而不是存儲數據兩次,只存儲一次(可能在第三個表中),並用外鍵引用數據而不是複製它們。

如果去掉冗餘的,你有幾個優點:

  1. 更少的存儲空間使用。

  2. 數據修改時工作量減少。

  3. 數據不會變得不一致,如果只修改其中一個副本,會發生這種情況。

+0

它背後的想法是,我想從這個表中創建一個應用程序,我不能使用表1的例子,因爲我不想在我的應用程序中包含其他數據。這就是爲什麼我想某些列在表複製2. 例 表1 標識 名稱 姓 生日 表2 編號 名稱 姓 –