GBase 8a
其他
文章

存储过程异常处理

发表于2024-06-03 16:36:29171次浏览0个评论


获取错误数命令
get diagnostics @a=number;  //包含warning和错误的数量
获取DML操作影响的行数,只影响最后一条DML操作的影响行数
get diagnostics @a=row_count;
获取错误号命令格式
get diagnostics condition 1 @a=gbase_errno;
获取错误状态命令格式
get diagnostics condition 1 @a=returned_sqlstate;
获取错误信息命令格式
get diagnostics condition 1 @a=message_text;

declare done int default 0;
declare errno int ;
declare sstate varchar(10922);
declare message varchar(10922);
declare continue handler for sqlstate '02000' set done = '1';
declare continue handler for sqlexception
begin
GET DIAGNOSTICS CONDITION 1 ERRNO = GBASE_ERRNO, SSTATE = RETURNED_SQLSTATE, MESSAGE = MESSAGE_TEXT; 
end;

评论

登录后才可以发表评论