簡體   English   中英

根據特定日期更新Postgresql中的列

[英]Updating a column in postgresql based on a specific date

我想知道是否可以將觸發器與PostgrSQL一起使用來更新我確實具有日期類型的列的列,並且在這個日期我想更新另一個表中的另一列。

更清楚一點

我有2張桌子

Works_locations表

walphid         wnumberid   locationid
DRAR            1012          101
PAPR            1013          105
PAHF            1014          105
ETAR            1007          102
DRWS            1007          102

locationid屬性是指位置表中的“ locid”

locid   locname     
101     Storage 
102     Gallary A   
103     Gallary B   
104     Gallary C   
105     Lobby   

展覽桌

exhid       exhname       description       strtdate        endDate
101         Famous         Blah Blah        2013-07-15      2013-10-13

這是連接展覽桌和位置桌的橋桌

locationsid     exhibitid
102             102
103             101
104             103

現在,每個展覽都有一些作品,應該放在一個位置表中。

在展覽表的“ endDate”列(這是一種日期數據類型)上,我想將“作品位置”表中的“ locationid”列更新為放置在另一個位置。

換句話說。 每個展覽都有一些作品,並且這些作品都放置在其中一個位置。 在展覽結束時,我想更改地點,特別是,我希望將作品退還給倉庫。

知道如何使用postgresql進行此操作嗎?

看待

PostgreSQL沒有內置的任務計划程序。 即使有一個調度程序,它運行的命令也不會被觸發,它們只是調度程序運行的過程。

您無法編寫在任意時間觸發的觸發器。

您將需要使用cron ,Task Scheduler,PgAgent或類似工具在所需時間運行語句。 或者,您可以編寫一個腳本來檢查下一個事件的發生時間,直到下一個事件休眠,然后運行所需的命令並將該事件標記為已完成,然后休眠直到下一個事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM