2012-04-10 66 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

相关问题