2012-04-10 67 views
2

我想將一組查詢(多個SQL更新)保存爲一個可以使用pgAdmin3(PostgreSQL 9.1)執行的單個元素。如何在PostgreSQL中存儲一組查詢,以便我可以輕鬆地再次運行它?

我知道我可以保存單個SELECTS作爲視圖,但多個UPDATE查詢如何?

例子:

BEGIN; 
UPDATE ...; 
UPDATE ...; 
COMMIT; 

更新:我尋找的是使用GUI添加的存儲過程,不運行它創建一個SQL查詢的一步一步的指導。

到目前爲止,我遇到了兩個問題"New function...":返回類型是必需的,發現NULL是不可接受的,所以試過integer。此外,將類型設置爲SQL,但我不知道SQL選項卡中究竟寫什麼,不管我嘗試確定按鈕是否仍處於禁用狀態並且狀態欄顯示:請輸入函數源代碼。

回答

2

你知不知道或者你嘗試過存儲過程(好吧,存儲過程類函數)?

http://www.postgresql.org/docs/9.1/interactive/plpgsql-structure.html

要叫它

select <name of function>(<param1>, <param2>) as result; 
+0

的確如此,但我該如何添加,運行並更新它?你能舉個基本的例子嗎? – sorin 2012-04-10 15:43:00

+0

讓我解釋一下:我試圖用語言SQL添加一個函數,但它詢問我有關返回類型。 – sorin 2012-04-10 15:46:04

+1

創作的例子出現在我給出的頁面中(CREATE FUNCTION bla bla)。如果該函數不能返回任何內容,則可以使用CREATE FUNCTION blabla(parameters)RETURNS void as $$。要運行它,請參閱我的編輯。要更新它:它必須出現在pgAdmin的treeview中的某處,否(在這裏沒有一個)? – 2012-04-10 16:03:54

1

這是一個基本的SQL存儲過程,一個不返回1

  • 右鍵單擊功能並選擇缺少的指南新功能...
  • complete namemy_procedurereturn typeintegerlanguagesql
  • 選擇定義標籤,寫SELECT 1;

這將是很好知道,如果你可以創建返回沒什麼查詢。

+0

謝謝。注意 - 它看起來像是在代碼選項卡中放置'SELECT 1;'。 – nealmcb 2017-08-19 16:00:21

相關問題