SAP 链接 MSS数据库DBCO abap NativeSQL

首先要保证 服务器上已经安装了驱动

1.DBCO新建链接  示例如下图

 

 

 

DBMS:  MSS(表示mss 数据库  若为 Oracle 则不同 请搜索 Oracle的 链接信息)

连接信息填写:MSSQL_SERVER=(数据库内网IP) MSSQL_DBNAME=(数据库名) OBJECT_SOURCE=(数据库名)

2.测试是否连接成功

   SE38 执行程序 :ADBC_TEST_CONNECTION

 

 

 若链接成功 则如下图:

 

 

若链接失败原因 如下图

 

 

则请检查 DBCO配置信息  或请 BASIS 检查 服务器是否安装驱动  

3.abap 代码连接

CONSTANTS: p_connr TYPE dbcon-con_name  VALUE  'MSS_ZK'.

********************链接MSS数据库**********************************
  TRY .
      EXEC SQL.
        CONNECT TO :P_CONNR
      ENDEXEC.
      IF sy-subrc 0.
        EXEC SQL.
          SET CONNECTION :P_CONNR
        ENDEXEC.
      ELSE.
        MESSAGE '连接中间库失败' TYPE 'S' DISPLAY LIKE 'E'.
        LEAVE TO LIST-PROCESSING .
      ENDIF.
    CATCH cx_sy_native_sql_error.
      MESSAGE 'Error in Native SQL' TYPE 'E'.
  ENDTRY.

"abap读取mss数据库至内表 可参考链接:https://blog.csdn.net/liyi199488/article/details/9714807 或自行百度

”连接成功之后 abap将数据库 信息 获取至内表(代码仅供参考)

 

 

 

 

 

 还有一种游标的处理方式  详情可百度

注意点: 若有功能性 或同一进程中 多个SQL语句 则需要 先commit work.

               如果存在多条sql   同一进程中  BAPI中的 ROLLBACK 语句 会 影响 上面的EXEC SQL

 

 

 

"数据处理完成之后记得断开 MSS数据库

* *********************断开MSS数据库**********************************
  EXEC SQL.
    DISCONNECT :p_connr
  ENDEXEC.

 

 

    

 

posted on 2020-12-28 10:15  SAP小龙女  阅读(678)  评论(0编辑  收藏  举报

导航