云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

域名备案_三亚网站建设_返现

小七 141 0

域名备案_三亚网站建设_返现

我对HANA和您可以轻松地为您的实体和视图公开OData服务印象深刻。自从在这个平台上开始工作以来,我发现需要使用深插入来存储我的实体。我认为这是可能的,但像许多人一样,我很失望地发现这是不支持的。

目前这个问题的解决办法是将创建的内容放在前端的一批中。我的主要问题是父Id没有返回给我以放置到子对象中。然后,我被迫将子create放入父对象create的成功处理程序中,从而失去了事务功能。

我想与大家分享一下我目前对这个缺点的解决方案。我已经创建了一个动态xsjs服务,它的行为方式与您期望的xsodata相同。必须满足特定的约定,但这些约定可以轻松定制以适合您的场景。

要开始,我已经建立了一些基本的表与父/子关系

深插入.hdbdd

由于我使用整数作为Id值,我现在需要一些序列来满足它们。

SequenceParent.hdb序列

SequenceChild.hdb序列

我们现在有了表和机制来创建Id值。为了把这些放在一起,我编写了一个xsjs文件。它是动态的,依赖于命名约定来完成工作。只要您坚持以下要求,它将适用于应用程序中的任何表:

您的Id列是一个名为"Id"的整数您的子外键是一个整数,命名为父表名和"Id"的串联每个表的序列名必须是"sequence"和实体的表名的串联

您的负载是JSON,使用以下结构:

元素"Object"是根级别所必需的实体名必须与其存储的表名匹配父对象中的子实体名还必须与子记录的表名匹配。这也必须是一个数组,即使只有一个实体存在

这就是魔法发生的地方。深插入.xsjs. 该服务使用反射、递归和命名约定来提供深度插入功能。这将适用于子代、孙辈,如果需要的话,大数据库,还可以继续工作。

该服务解析有效负载,淘客是什么,大数据调研报告,读取所有属性,准备一个对象列表以放置在批创建中。在准备阶段,借助于定义的序列生成Id值。对象按顺序列出,所有键都已就位,因此在插入过程中不会发生外键冲突。最后通过sql查询将对象写入数据库深插入.xsjs

从UI5调用服务。

我们对服务进行了一个简单的ajax调用,而不是OData创建,只有从远程系统调用时才需要授权头,下面的示例中包括了授权头,大数据研发,另外,请记住适当地处理您的COR

我们现在有一个支持单个事务的动态深度插入。这可以很容易地定制,以适合您自己的命名约定和场景。例如使用guid而不是整数作为Id字段。

需要注意的是,大数据人工智能,无论插入成功还是失败,都会生成Id值。这些值可能会被浪费。不幸的是,这无法避免目前的限制。