“EXCEPTION”处或附近的语法错误

Syntax error at or near "EXCEPTION"

提问人:HWid 提问时间:6/9/2015 最后编辑:HWid 更新时间:6/11/2015 访问量:5421

问:

谁能告诉我在下面的触发过程中哪里可能有语法错误?

CREATE OR REPLACE FUNCTION hd.insert_insteadof_update()
  RETURNS trigger AS
$BODY$
 BEGIN                                         

   IF (OLD <> NEW)                               
   THEN
     NEW.set_date = now();         

     INSERT INTO hd.ticket_attachment              
     VALUES (NEW.*);

   EXCEPTION WHEN UNIQUE_VIOLATION THEN END;  
   END IF;      

   RETURN NULL;  

 END;   
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;

我使用 PostgreSQL 8.4。

ERROR:在“EXCEPTION”第 13 行或附近出现语法错误:当出现异常时出现语法错误 UNIQUE_VIOLATION然后结束;
^

错误**********

错误:语法错误在“EXCEPTION”处或附近 SQL 状态:42601 字符: 356

PostgreSQL 异常 语法错误 postgresql-8.4

评论

1赞 6/11/2015
您缺少一个 有关示例,请参阅手册:postgresql.org/docs/current/static/...begin
0赞 HWid 6/17/2015
是的,它有效,谢谢。我以前没有使用过额外的开头,但有例外......

答: 暂无答案