我已经创建了一个函数PostgreSQL来插入以下内容
CREATE TABLE gtab83
(
orderid integer NOT NULL DEFAULT nextval('seq_gtab83_id'::regclass),
acid integer,
slno integer,
orderdte date
)
Run Code Online (Sandbox Code Playgroud)
创造Function的
CREATE OR REPLACE FUNCTION funcInsert(iacid int,islno int,idate date) RETURNS int AS
$$
declare id_val int;
BEGIN
INSERT INTO GTAB83 (acid,slno,orderdte) VALUES (iacid,islno,idate) RETURNING orderid
into id_val;
return id_val;
END;
$$
LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)
select funcInsert(666,13,'2014-06-06'
错误:查询没有结果数据的目的地语境:PL/pgSQL函数procgtab83(整数,整数,日期)第3行在SQL语句
create or replace function funcinsert(iacid int, islno int, idate date)
returns int as $$
declare id_val int;
begin
with i as (
insert into gtab83 (acid,slno,orderdte)
values (iacid,islno,idate)
returning orderid
)
select orderid into id_val
from i;
return id_val;
end;
$$ language plpgsql;
Run Code Online (Sandbox Code Playgroud)
它可以像普通的sql一样简单
create or replace function funcinsert(iacid int, islno int, idate date)
returns int as $$
insert into gtab83 (acid,slno,orderdte)
values (iacid,islno,idate)
returning orderid
;
$$ language sql;
Run Code Online (Sandbox Code Playgroud)