【发布时间】:2013-08-25 09:40:19
【问题描述】:
这一定很简单,但我正在迈出 Postgres 函数的第一步,但我找不到任何有用的东西...
我想创建一个函数来修改表和/或列,但我找不到将表和列指定为函数中的参数的正确方法。
类似:
CREATE OR REPLACE FUNCTION foo(t table)
RETURNS void AS $$
BEGIN
alter table t add column c1 varchar(20);
alter table t add column c2 varchar(20);
alter table t add column c3 varchar(20);
alter table t add column c4 varchar(20);
END;
$$ LANGUAGE PLPGSQL;
select foo(some_table)
在另一种情况下,我想要一个函数来改变某个表中的某个列:
CREATE OR REPLACE FUNCTION foo(t table, c column)
RETURNS void AS $$
BEGIN
UPDATE t SET c = "This is a test";
END;
$$ LANGUAGE PLPGSQL;
有可能吗?
【问题讨论】:
-
看看this post。
标签: function postgresql variables plpgsql dynamic-sql