前天,作者okbob发布了最新版的plpgsql_check扩展,试用了一下,真的非常好用。
plpgsql_check可以精确的显示你存储过程中的问题。
以前写存储过程的时候,经常是创建存储过程不出错,执行的时候出错,尤其是开发的时候,不可能所有的流程全测试到,结果导致有些分支语句的字段名写误了,也没看到了,一执行就出错,很是麻烦,现在整个世界一下子清静了,整个人都变好了。
操作系统:Ubuntu16.04
数据库: Postgresql9.6beta1
进入到PG源码的contrib目录下,git clone https://github.com/okbob/plpgsql_check.git
然后:
1. make USE_PGXS=1 clean
2. make USE_PGXS=1 install
3. make USE_PGXS=1 installcheck
编译好后,安装扩展
# create extension plpgsql_check;
**注意,刚才写错了,在执行plpgsql_check_function_tb函数前,
先要运行一下你的函数**
比如,create or replacefunc_new_user_init(int,int)......
也就是说,
```sql
select * from plpgsql_check_function_tb('func_new_user_init(int,int)');
```
和你的create function 函数必须在同一个会话里,才能检查。
```sql
select * from plpgsql_check_function_tb('func_new_user_init(int,int)');
```
如下图所示: