如何将SAP表插入具有相同结构的远程表(无LOOP ... ENDLOOOP)

2020-08-26 04:45发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我在DBCON中有一个远程连接(称为" CONN1")。

我试图将*(所有记录)从SAP(默认连接)插入到具有相同结构的远程表(通过DBCON连接" CONN1")。

我尝试了各种语法,包括:

EXEC SQL。

插入CONN1.SCHEMA.TABLE_NAME

(SELECT * FROM TABLE_NAME)

ENDEXEC。

我总是会出现短暂的转储(SQL错误)。

我唯一的成功是将TABLE_NAME中的所有记录(在DEFAULT SAP连接中)插入内部表(ITAB),然后连接到CONN1,然后将ITAB和INSERT记录中的LOOP一张一张地插入。 但这非常慢。 如上所述,我们需要能够在两个不同的模式(CONN1和DEFAULT)中使用子选择来执行INSERT。

任何提供的建议将不胜感激!

非常感谢您,克里斯·T。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我在DBCON中有一个远程连接(称为" CONN1")。

我试图将*(所有记录)从SAP(默认连接)插入到具有相同结构的远程表(通过DBCON连接" CONN1")。

我尝试了各种语法,包括:

EXEC SQL。

插入CONN1.SCHEMA.TABLE_NAME

(SELECT * FROM TABLE_NAME)

ENDEXEC。

我总是会出现短暂的转储(SQL错误)。

我唯一的成功是将TABLE_NAME中的所有记录(在DEFAULT SAP连接中)插入内部表(ITAB),然后连接到CONN1,然后将ITAB和INSERT记录中的LOOP一张一张地插入。 但这非常慢。 如上所述,我们需要能够在两个不同的模式(CONN1和DEFAULT)中使用子选择来执行INSERT。

任何提供的建议将不胜感激!

非常感谢您,克里斯·T。

付费偷看设置
发送
4条回答
me_for_i
1楼-- · 2020-08-26 05:17

我会尝试将CL_SQL_CONNECTION用于插入语句。 这样,我猜可能会出现SELECT ... ENDSELECT的情况,并在此循环内,将数据插入到由CL_SQL_CONNECTION创建的其他连接中。 请注意,以这种方式处理SQL连接涉及一些工作...

黑丝骑士
2楼-- · 2020-08-26 05:20

您是否选中了 answer 吗? 如果它不起作用,请共享您的代码。

compass1988
3楼-- · 2020-08-26 05:18

我以前用自定义z程序编写了一个博客,该程序使用ABAP将数据从SAP ASE DB复制到辅助数据库(HANA) ADBC(本机SQL)。 我相信同样的方法也可以满足您的要求。

https ://blogs.sap.com/2017/10/28/replicating-data-into-hana-using-abap-adbc-native-sql/

当学会了学习
4楼-- · 2020-08-26 05:24

从未做到 。 ABAP文档说一次只能使用一个数据库连接。 如果您想按照您的建议在一个SQL查询中执行此操作,我将选择一种非ABAP解决方案。 中间解决方案可以使用两个SQL查询,第一个查询将表读入文件,第二个查询从文件加载表,该文件位于共享目录中。

一周热门 更多>