簡體   English   中英

PostgreSQL:隊列中有多個PERFORM

[英]PostgreSQL : Multiple PERFORM in a queue

我的數據庫中有30個函數,我需要一個接一個地執行所有函數,它們都已鏈接在一起。

我怎么說功能x需要等待功能x-1的執行才能啟動?

我有所有這樣的PERFORM行:

  PERFORM func1();
  PERFORM func2();
  PERFORM funcx();
  ....

我想“通知” func2等待,直到func1()完成。

我可以創建一個帶有增量的表,當每個函數完成后,我將更新值並在主函數中添加一個while循環,當值更改時,將執行另一個函數。 這是一個主意,而不是理想的解決方案。

問候

它們因此被執行,這是示例:

so=# do $$
begin
perform pg_sleep(0.4);
raise info '%',clock_timestamp();
perform now();
raise info '%','2nd: '||clock_timestamp();
end; $$
;
INFO:  2017-10-31 20:13:03.105867+00
INFO:  2nd: 2017-10-31 20:13:03.106168+00
DO
Time: 402.273 ms

如您所見,第二場表演(花費不到0.4秒的時間)首先等待完成...

暫無
暫無

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

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