创建表并插入数据:
create table public.test_fail(a int); insert into test_fail values(1);
创建向表test插入数据的存储过程:
create or replace function inserttest() returns text as $$ declare sql varchar; i int; begin for i in 1..1000000 loop sql = 'insert into test_fail values(2)'; execute sql; end loop; return 'insert成功'; end $$ language pluxsql;
执行上述存储过程,未执行完的时候,重启数据库系统:
select inserttest();
重启完成之后,登录数据库查看表:
select * from test_fail;
说明保证了数据的一致性。