使用CDS/AMDP/OpenSQL的准则?

2020-09-22 15:37发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们。 我真的很难理解这一点...

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

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


专家们。

我真的很难理解这一点。

我是HANA系统的新手。 我正在探索有关HANA的概念,这些概念可以帮助我们实现代码下推。 这向我介绍了CDS和AMDP的概念,它们是HANA的核心概念。 我试图在网上找到一些例子。 这是我发现的。

在OpenSQL的示例中,我发现了新的语法并鼓励使用SQL函数(例如sum和多个表联接)。

在CDS的示例中,我发现它们连接了多个表并鼓励使用SQL函数。

在AMPD的示例中,我再次发现它们从数据库中检索数据并使用功能。

如果所有这些都是出于同一目的,那么有人可以帮助我了解我什么时候应该购买CDS或AMDP或OpenSQL吗?

谢谢。

2条回答
昵称总是被占用
2020-09-22 16:13 .采纳回答

我一开始也为此感到困惑,似乎引入了许多具有相似功能的技术。 我个人通常以该命令为指导:

  1. 我可以使用OpenSQL回答我的问题吗?仅在特定情况下(例如报告)会问这个问题吗?->使用OpenSQL
  2. 该查询是否可重用? -> CDS(具有输入参数,关联等)
  3. OpenSQL或CDS都不能回答我的问题,但是HANA可以使用SQLScript来解决吗? -> AMDP

AMDP始终有一个缺点,即它只能与SAP HANA一起用作主数据库,因此,如果您仍要支持其他基础数据库系统,则需要实现一个不使用AMDP的备用代码路径。 (对于CDS表功能,我现在不确定如何运行。)

当然,如果您使用的是某种框架,那么它会告诉您使用技术X(我假设大多数Fiori/UI5内容都希望您使用CDS并使用注释,以便它可以基于元数据为您生成内容 )。

据我所知,其他(部分也是新技术)已经过时了,其中包括使用ADBC或EXEC SQL的直接本机SQL,CALL DATABASE PROCEDURE/数据库过程代理和外部视图,因为AMDP可以更好地解决这些问题 自上而下的方法。

然后,还有关于HANA对象(HTC和HTA)的传输的不同方法。

您应该并且可以使用哪些技术在很大程度上取决于您的发行版。 例如,我主要在7.40 SP6上工作。 HTA不可用,带有输入参数的CDS视图不可用,并且许多CDS核心功能也缺失。 因此,对我而言,我大部分时间都坚持使用OpenSQL,如果偶尔遇到递归SQL查询,则可以实施ABAP托管数据库过程。

一周热门 更多>