对于PostgreSQL数据库,批量插入数据有两种方式,一是直接执行一条SQL,这也是最简便的,可参考:postgreSQL数据库 向表中快速插入1000000条数据
但有时为了方便多次批量插入,此时就可以借助函数来批量插入:
-- 创建函数
create or replace function batchInsert(startNum int, endNum int)
returns varchar AS
$$
declare
num int;
begin
num := startNum;
loop
num := num + 1;
insert into tab values (num, 'name');
exit when num >= endNum;
end loop;
return to_char(now(), 'YYYY-MM-DD HH24:MI:SS:MS');
end;
$$ language plpgsql;
-- 调用函数
select batchInsert(1, 100000);