SAP连接外部ORACLE数据库 
1.先在SAP底层ORACLE数据库编辑TNS文件,一般由BASIS配置完成.配置完成后我们可以用事务码:AL11查看配置是否正确,路径:DIR_ORAHOME->network->admin->tnsnames.ora查看对应的TNS是否配置正确,如:

ORADB04.world = 
(DESCRIPTION = 
(ADDRESS_LIST = 
(ADDRESS = 
(PROTOCOL = TCP) 
(HOST = XXX.XXX.XXX.XXX) 
(PORT = 1521) 


(CONNECT_DATA = 
(SERVICE_NAME = XXXX) 

)

2.在SAP中用DBCO配置,如下:

3.编写ABAP程序实现SAP访问外部ORACLE数据库,并插入数据。 
有两个例子: 
例子1: 
REPORT zljc_nativesql2 . 
DATA: p_dbname(10) VALUE ‘SIPS’. 
DATA: l_sql_error TYPE REF TO cx_sy_native_sql_error, 
l_error_text TYPE string.

TYPES: BEGIN OF ty_room, 
room_id(30), 
room_name(100), 
room_people(10), 
room_desc(100), 
END OF ty_room.

DATA: gt_room TYPE TABLE OF ty_room , 
gs_room TYPE ty_room.

gs_room-room_id = ‘no-201’. 
gs_room-room_name = ‘风波亭’. 
gs_room-room_people = ‘5’. 
gs_room-room_desc = ‘岳武穆遗书’. 
APPEND gs_room TO gt_room.

gs_room-room_id = ‘no-202’. 
gs_room-room_name = ‘威虎山’. 
gs_room-room_people = ‘5’. 
gs_room-room_desc = ‘座山雕老巢’. 
APPEND gs_room TO gt_room.

gs_room-room_id = ‘no-203’. 
gs_room-room_name = ‘白宫’. 
gs_room-room_people = ‘29’. 
gs_room-room_desc = ‘美国总统府’. 
APPEND gs_room TO gt_room.

gs_room-room_id = ‘no-204’. 
gs_room-room_name = ‘鸟巢’. 
gs_room-room_people = ‘5’. 
gs_room-room_desc = ‘奥运会主场馆’. 
APPEND gs_room TO gt_room.

gs_room-room_id = ‘no-205’. 
gs_room-room_name = ‘凤仪亭’. 
gs_room-room_people = ‘5’. 
gs_room-room_desc = ‘貂蝉和吕布’. 
APPEND gs_room TO gt_room.

gs_room-room_id = ‘no-206’. 
gs_room-room_name = ‘伪皇宫’. 
gs_room-room_people = ‘5’. 
gs_room-room_desc = ‘伪满皇帝’. 
APPEND gs_room TO gt_room.

TRY. 
EXEC SQL. 
CONNECT TO :p_dbname 
ENDEXEC.

CATCH cx_sy_native_sql_error INTO l_sql_error. 
CALL METHOD l_sql_error->get_text 
RECEIVING 
result = l_error_text. 
WRITE: AT /1 l_error_text. 
ENDTRY. 
IF sy-subrc <> 0. 
WRITE: /1 ‘连接到数据库失败:’, l_error_text ,’,请联系管理员!’.

STOP. 
ENDIF.

TRY. 
LOOP AT gt_room INTO gs_room. 
EXEC SQL. 
insert into ljc_room 
( room_id, 
room_name, 
room_people, 
room_desc ) 
values(:gs_room-room_id, 
:gs_room-room_name, 
:gs_room-room_people, 
:gs_room-room_desc)

ENDEXEC.
 ENDLOOP.
 "捕获异常
1
2
3
CATCH cx_sy_native_sql_error INTO l_sql_error. 
l_error_text = l_sql_error->get_text( ). 
ENDTRY. 
“*操作Oracle数据库时,异常处理 
IF NOT l_error_text IS INITIAL. “如果捕获到异常,记录日志,回滚 
CLEAR l_error_text. 
EXEC SQL. 
rollback 
ENDEXEC. 
ELSE. ” 如果无异常,提交插入数据 
EXEC SQL. 
commit 
ENDEXEC. 
ENDIF.

EXEC SQL. 
DISCONNECT :p_dbname 
ENDEXEC.

例子2:

Function module:ZMM_SIPS_ROOM 
调用funtion module 的程序: ZLJC_NATIVESQL3

SAP连接外部ORACLE数据库相关推荐

  1. Mendix连接外部Oracle数据库所需驱动

    选中jar包即连接所需文件

  2. 为何要把你的SAP运行在Oracle数据库上?

    提起SAP和甲骨文这两家公司,真是有很多故事可以聊.抛开二者在应用软件领域的竞争不谈,今天在这里我们只聊数据库. 一家是全球最大的应用软件厂商,一家是数据库技术领域的巨头,因此人们自然而然会想把两家公 ...

  3. jsch连接mysql_求用jsch网络工具包通过ssh连接远程oracle数据库并发送sql操作语句(数据库在unix上)java代码例子...

    求用jsch网络工具包通过ssh连接远程oracle数据库(数据库在unix上)java代码例子:为何jsch发送:sqlplususer/pwd@service此命令,却没有结果返回啊.下面是代码: ...

  4. sql 链接到oracle数据库,通过MSSQL连接服务器连接至Oracle数据库

    前言 有很多时候,我们需要MSSQL与Oracle进行跨库查询或数据交互.本篇随笔将阐述如何通过MSSQL的连接服务器连接至Oracle数据库,并且读取数据的示例. 具体步骤 首先需要到Oracle的 ...

  5. 本地未安装Oracle数据库,如何连接远程Oracle数据库

    方法一:用Navicat Premium连接 注意,这里用的要是黄色的版本,而不是只针对Mysql的绿色版本 工具栏选择[工具]-[选项],点击[其他-OCI]    你会发现有个OCI librar ...

  6. plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转)

    plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转) 参考文章: (1)plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转) ...

  7. spss连接mysql_spssstatistics19.0配置odbc连接远程oracle数据库

    本文档讲的是spss statistics 19.0如何配置odbc连接本地oracle数据库,步骤如下: 1.开启远程oracle数据库服务,开启以下两个即可 2.在本地客户端中,安装好oracle ...

  8. spss statistics 19.0配置odbc连接远程oracle数据库

    本文档讲的是spss statistics 19.0如何配置odbc连接本地oracle数据库,步骤如下: 1.开启远程oracle数据库服务,开启以下两个即可 2.在本地客户端中,安装好oracle ...

  9. PLSQL连接远程Oracle数据库教程(Windows11最新详细教程)

    PLSQL连接远程Oracle数据库教程(Windows11最新教程) 1.下载PLSQL,下载后直接下一步安装 https://www.allroundautomations.com/try-it- ...

最新文章

  1. sont表示元素在存入集合时进行了排序,数据遍历的结果是按某个排序规则输出的
  2. HTTP中post方法提交不同格式的数据
  3. 微服务网关Gateway
  4. Linux 命令(69)—— objcopy 命令
  5. Yarn FairSheduler使用FairSharePolicy计算Fair Share的规则、原理和代码实现
  6. 【目标检测】目标检测算法-从OverFeat到YOLO
  7. PS中缩放工具的细微缩放不可以使用的解决方法
  8. 计算机二级必过知识点大全,计算机二级ms-office办公软件必过知识点.doc
  9. IPv4如何向IPv6过渡?IPv6改造方案有哪些?
  10. css设置图片、边框、背景样式
  11. hdf5 matlab,hdf5格式的matlab读写操作
  12. 微前端应用及基于qiankun的微前端实践
  13. [转]go-kit 入门
  14. UUID简介以及java代码获取UUID示例
  15. DANN loss/acc振荡
  16. 23 种设计模式的#羞羞#解释,听说能看懂的人都是泡妞高手
  17. android 六棱形分析图,[转载]菱形整理形态、三角形整理形态图解及分析
  18. zabbix使用web界面监控本机
  19. 人工智能并非万能,智慧停车怕难解决城市停车难题?
  20. 基于 Golang 的 K8s 二次开发细节汇总

热门文章

  1. QWidget: Must construct a QApplication before a QPaintDevice
  2. PEOPEO中国区总经理于景:当我谈交互设计时我谈些什么
  3. 【pmcaff】产品经理每日十问,问问自己,你做到了嘛
  4. 新的一年,对产品和产品经理的感悟
  5. java 大数的学习
  6. PM2 node进程管理工具 自动部署小结
  7. CentOS6.5 gcc升级到4.8.2
  8. 计算机网络原理和OSI模型与TCP模型
  9. 数据结构-栈的顺序结构两种方式
  10. [C语言] 文件操作,解压华为官方固件UNDATE.APP工具(源代码);