您的位置:首页 > 数据库

Native SQL

2014-01-22 09:25 253 查看
很少会用native sql,恰好项目里用到了,做个简单记录:

Tcode:DBCO




上面配置只是看DB连接,至于配置肯定不会让ABAP插手。

下面代码只是为了解 书写的格式

实例代码:

  DATA: con TYPE string VALUE 'JZYF'.
     
     
   "连接名称
  DATA: exc_ref TYPE REF TO
cx_sy_native_sql_error.  "异常
  DATA: sql_error TYPE bapiret2-message.
     
   
  

  "连接数据中心数据库
  EXEC SQL.
    CONNECT TO
: con
     
     
     
     
     
  "获取连接 
     
   
  ENDEXEC.

IF sy-subrc = 0.

     
TRY.
     
    EXEC SQL.
     
      insert
into derp_ztmmjy_fw_orstre
     
     (dept_code,
zfield1, zfield2, zfield3, zfield4, 
     
      zfield5,
zfield6, zfield7, zfield8, zfield9, zfield10)
     
   
 values
     
     
 ( '11',    
     
     
     
  "如果是取变量值,则前面加冒号,如果直接赋值,不要冒号
     
     
  :l_wa_alv-ZFIELD1  
  ,    
   "预留字段1
     
     
  :L_WA_ALV-ZFIELD2  
  ,    
   "预留字段2
     
     
  :L_WA_ALV-ZFIELD3  
  ,    
   "预留字段3
     
     
  :L_WA_ALV-ZFIELD4  
  ,    
   "预留字段4
     
     
  :L_WA_ALV-ZFIELD5  
  ,    
   "预留字段5
     
     
  :L_WA_ALV-ZFIELD6  
  ,    
   "预留字段6
     
     
  :L_WA_ALV-ZFIELD7  
  ,    
   "预留字段7
     
     
  :L_WA_ALV-ZFIELD8  
  ,    
   "预留字段8
     
     
  :L_WA_ALV-ZFIELD9  
  ,    
   "预留字段9
     
     
  :L_WA_ALV-ZFIELD10)

     
    ENDEXEC.

     
    EXEC SQL.
     
     
commit
     
    ENDEXEC.

     
  CATCH cx_sy_native_sql_error INTO exc_ref.
     
    sql_error =
exc_ref->get_text( ).

     
    "异常处理
     
ENDTRY.

    EXEC SQL.
     
DISCONNECT :CON    
     
     
     
     
 "关闭连接
    ENDEXEC.
  ENDIF.

特别注意的是,SAP里的时间日期格式,在ERP外数据库设计时,使用字符类型
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: