二维码

[ddic] ABAP捕捉插入数据库时异常

qshiou发表于 2015-07-22 12:13tougegelol 最后回复于 2015-07-23 10:54 [复制链接] 3511 2

使用INSERT语句插入数据库时可能会由于各种原因dump,提供一种捕捉异常的方法。

  1. DATA: lcx_error TYPE REF TO cx_root.   "cx_sy_open_sql_db.
  2. DATA i_tab LIKE TABLE OF spfli WITH HEADER LINE.
  3. DATA err_text TYPE c LENGTH 1000.
  4. SELECT * INTO TABLE i_tab FROM spfli.
  5. TRY.
  6.     INSERT spfli FROM TABLE i_tab.
  7.   CATCH cx_sy_open_sql_db INTO lcx_error.
  8.     err_text = lcx_error->get_text( ).               "得到错误信息
  9.     sy-subrc = 4.                                    "改变系统变量
  10. ENDTRY.
  11. IF sy-subrc <> 0.
  12.   WRITE :/ '数据更新失败!'.
  13.   WRITE err_text.
  14.   ROLLBACK WORK.
  15. ELSE.
  16.   WRITE :/ '数据更新成功!'.
  17.   COMMIT WORK.
  18. ENDIF.
复制代码


效果如下:

结果

结果


新人贴哈,见异常这里leon大哥还没写,嘿嘿
回复

使用道具 举报

Twilight
有写的,只是在 ABAP实战笔记  板块中,还没补充完整,待续....
ABAP开发中常用的几种异常处理
回复 支持 反对

使用道具 举报

tougegelol
CATCH cx_sy_open_sql_db INTO lcx_error.
    err_text = lcx_error->get_text( ).  

这里的err_text好像都是德文的提示,我研究过,好像没办法控制语言···



回复 支持 反对

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表