本文共 589 字,大约阅读时间需要 1 分钟。
这样一段正常的兼容ORACLE的代码,在使用社区版本的psql连接到PPAS时,执行异常
postgres=> create table about_we (id int, info text); create sequence SEQ_ABOUT_WE_ID;postgres=> CREATE OR REPLACE TRIGGER TRI_ABOUT_WE_ID BEFORE INSERT ON ABOUT_WEFOR EACH ROWBEGIN SELECT SEQ_ABOUT_WE_ID.nextval INTO :new.ID FROM dual; end;ERROR: 42601: syntax error at end of inputLINE 6: FROM dual; ^LOCATION: scanner_yyerror, scan.l:1374
但实际上,语法是PPAS兼容ORACLE的语法,并没有问题。
原因惊人,竟然是PPAS在客户端psql上做了hack,来实现这一的语法兼容。 所以使用社区版本的psql是不行的,记住咯。 以后不要使用社区版本的psql连接PPAS了,否则就等着给自己挖坑吧。 请使用EDB自己的那套东西。 或者使用pgadmin,因为pgadmin号称兼容ppas。转载地址:http://znczl.baihongyu.com/