Postgresql中預存程序(函數)調用預存程序(函數)時應用注意的問題

來源:互聯網
上載者:User

標籤:

在postgresql中我們在執行預存程序中往往會使用select 預存程序,但是如果預存程序中再調用 預存程序時,就不能這樣用了,應該用perform 預存程序,來看看官方文檔的說明

=====================================================================

執行一個沒有結果的運算式或者命令

有時候我們希望計算一個運算式或者一個命令,但是卻丟棄其結果(通常因為我們經常調用一些存在有用的副作用但是不存在有用結果值的函數)。 要在 PL/pgSQL 裡幹這件事, 你可以使用PERFORM語句:

PERFORM query;

這條語句執行一個 query並且丟棄結果。 query 的寫法和你平常寫 SQL SELECT 命令是一樣的, 只是把開頭的關鍵字 SELECT 替換成 PERFORM。 PL/pgSQL 的變數和平常一樣代換到命令中。 同樣,如果命令產生至少一行,那麼特殊的變數 FOUND 設定為真,如果沒有產生行,則為假。

注意: 我們可能希望沒有INTO子句的SELECT也能滿足這樣的需要, 但是目前可以接受的唯一的方法是PERFORM。

一個例子:

PERFORM create_mv(‘cs_session_page_requests_mv‘, my_query);

Postgresql中預存程序(函數)調用預存程序(函數)時應用注意的問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.