1

我想在我的 vm 中执行一个包含 3 个存储过程的 Postgresql 脚本文件。但只有第一个被执行。有什么解决方法吗?脚本文件:

alter table ex add column if not exists json_column jsonb;  
alter table im add column if not exists json_column jsonb;
alter table imag add column if not exists json_column jsonb;
create or replace procedure update_ex(     //first stored procedure
   js jsonb,
   id bigint
) 
language plpgsql 
as $$
begin
    update ex set json_column = js where ex_id=id;
end;$$  // error: SQL Error [42601]: ERROR: syntax error at or near "create"
create or replace procedure update_im(   //second stored procedure
   js jsonb,
   id bigint
) 
language plpgsql 
as $$
begin
    update im set json_column = js where im_set_id=id;
end;$$
create or replace procedure update_imag(
   js jsonb,
   id bigint
) 
language plpgsql 
as $$
begin
    update imag set json_column = js where imag_id=id;
end;$$
4

1 回答 1

0

你错过了一个“;” 在最后。

end;$$;  
于 2021-12-20T07:38:23.180 回答