ABAP 连接外部ORCALE数据库
前言
提示:很多时候sap 需要调用其它数据库的数据,如ORCALE等等,这时候我们就需要进行配置。
一、SAP与ORCALE建立连接
1.先在SAP底层ORACLE数据库编辑TNS文件,一般由BASIS配置完成.配置完成后我们可以用事务码:AL11查看配置是否正确。
2.配置正确后使用tcode :dbco进行建立连接
(1)连接sqlserver
字符串为:MSSQL_SERVER=IPaddress MSSQL_DBNAME=databasename
(2)连接 oracle
麻烦一点:需要在sap服务器上修改tnsname.ora,指向你的oracle服务器实例字符串
如图:
连接后测试Tcode: st04m 或 db02
到了这一步SAP 与 数据库直接的连接就算建立成功了
二、SAP调用外部数据库
1.读取数据
我们也可以在代码里进行连接的测试
代码如下:
CONSTANTS p_connr TYPE dbcon-con_name VALUE 'SHNC'.
TRY.
EXEC SQL.
CONNECT TO :p_connr
ENDEXEC.
EXEC SQL.
SET CONNECTION :p_connr
ENDEXEC.
IF sy-subrc EQ 0.
WRITE: / '连接成功!'.
ELSE.
WRITE: / '连接失败!'.
ENDIF.
ENDTRY.
目标数据库目前只有一条数据,然后在SAP 端进行查询。
查询的字段与表明必须与ORCALE中的一致。
返回结果:
获取成功。
2.写入数据
写入数据方法的步骤与读取一致,把SQL换成插入语句就OK了。(PS:写入方法不唯一,不过基本都是通过INSERT语句进行写入)
我们打开ORCALE数据库进行查询,发现数据已经写进来了。
修改与删除就不一一列举了,只要懂基本sql 语句,应该都能做出来。
总结
就个人而言,SAP调用ORCALE外部数据库麻烦在建立连接上,大部分时间都花在了这里,基本只要连接建立成功,接下来就简单了很多。