如何给下面过程添加异常,当遇到警告或异常时都回滚:
CREATE OR REPLACE PROCEDURE Import_Data_Table(IN importPathAndFileName varchar(100), IN tabSchema varchar(100), IN tabName varchar(100), IN exportMSGPath varchar(100))
LANGUAGE SQL
P2:BEGIN
DECLARE v_importPathAndFileName varchar(100);
DECLARE v_tabSchema varchar(100);
DECLARE v_tabName varchar(100);
DECLARE v_exportMSGPath varchar(100);
DECLARE v_sql_import varchar(200);
SET v_importPathAndFileName = COALESCE(rtrim(ltrim(importPathAndFileName)),'');
SET v_tabSchema = COALESCE(rtrim(ltrim(tabSchema)),'');
SET v_tabName = COALESCE(rtrim(ltrim(tabName)),'');
SET v_exportMSGPath = COALESCE(rtrim(ltrim(exportMSGPath)),'');
IF(v_importPathAndFileName != '' AND v_tabSchema != '' AND v_tabName != '' AND v_exportMSGPath != '') THEN
SET v_sql_import = 'import from '|| v_importPathAndFileName ||' of DEL modified by codepage=1375 DELPRIORITYCHAR messages on server insert into '|| v_tabSchema ||'.'|| v_tabName;
CALL SYSPROC.admin_cmd(v_sql_import);
END IF;
END P2
求大神支招!!!!
------解决方案--------------------------------------------------------
admin_cmd没怎么用过,但是正常情况下,遇到异常存储过程会自动回滚的
------解决方案--------------------------------------------------------
警告的话,试下DECLARE UNDO HANDLER FOR SQLWARNING行么