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

云主机_微信小程序数据库交互_怎么申请

小七 141 0

这是另一个教程,是解释SAP云平台后端服务的详细信息。

在前面的一个教程中,我们学习了如何将服务定义移到一个单独的部分中。在本教程中,我们将再次关注这个主题。在服务定义部分,物联网传感器,您可以添加select语句我不得不说,这是相当强大的听起来不错

到目前为止,我们已经做了如下工作:

在数据模型中定义实体,在服务模型中,将要公开的实体定义为projection on…

现在,我们将使用select语句来代替projection.

首先,让我们比较两个相同的表达式:

如果您基于此模型创建API,您将看到OData服务有两个完全相同的EntityTypes。如果您创建一些数据并使用两个实体集获取集合,那么您将收到完全相同的负载。

注意:您可以使用通配符:

现在让我们尝试一个不同的示例。

在这个服务定义中,我们使用投影和select语句公开一个实体和第二个实体

在这两种情况下,数据都是从同一个表中获取的。此外,select语句允许选择所需的列除此之外,还可以指定一个过滤器(where)。像这样,我们可以做非常精细的建模。

这意味着在这个例子中,返回的集合对于"Customers"和"CustomersUSA"是不同的如果是"CustomersUSA",则直接在数据库上应用一个过滤器

注意:有时在使用后台服务时,我会感到有点不满意,因为我看不到后台到底发生了什么。比如查数据库。阅读日志等也就是说,无服务器计算有缺点你有同感吗?我觉得累了好吧,算了吧

看下面一个完整的例子:

我们有所有客户的正常收款。此外,我们有一个收集,我们只得到客户位于我们的祖国(在这个例子中,它是美国)第三个集合给出了一个通配符和只获取空值项的示例(例如,用于维护或任何用例)

尝试:

在API生成后,创建一些示例数据。

使用(通用)"Customers"集合创建多个项。例如:

{"id":1,"name":"customer1",云淘,"country":"美国"}

某些具有该属性值的条目:"country":"IND"

有些根本没有国家,例如:

{"id":4,"name":"customer4"}

在创建一些示例数据后,调用2个集合,这2个集合的引擎盖下有一个select语句。我想看看引擎盖下面有什么…我觉得很累…

但首先看到的是满负荷,我们使用(通用)"客户"集合:

https://backend服务…/…//客户

结果如下:

然后是美国的"家庭客户"

https://backend服务…/…//家庭客户

最后收集无效条目:

https://backend服务…/…//HomelessCustomers

我们在这里看到的是,我们有3个实体集在同一个数据库表上运行,每个实体集显示一个不同的条目列表。

最后一个示例看起来很奇怪

是的,我们显式地列出条目以始终看到一个null属性。如果我已经指定了空值,为什么我必须看到它?是的,这可以加强。我们可以排除那些我们不需要看到的属性。怎么用?保持安静,继续下一个例子我们在select中添加了一个"excluding",只是为了表明这是可能的,返利是什么意思,我们再加一个过滤器,我们添加了一个别名…为什么?…只是为了表明这是可能的

别名的工作方式和我们从投影中已经知道的一样。此外,排除在外也并不意外。如您所见,复杂的filter语句是可能的。这并不复杂可能

试用:

API生成后,创建一些样本数据。

{"id":1,"name":"customer1","country":"美国"}

{"id":2,"name":"Customer2"}

{"id":3}

随后查看包含所有3个条目的"Customers"实体集,并与仅包含一个条目的"HomelessCustomers"实体集进行比较。此外,exclude和别名也起作用:

只是另一个select语句的示例

您可以像往常一样测试它,创建id号为1、2和11的条目当调用Customers集合时,所有3个条目都会出现,当调用FirstTenCustomers集合时,只显示2个

请看这种过滤器是如何工作的。使用关键字"like"和带有占位符的字符串。例如:

对于测试,使用以下有效负载创建一些条目:

{"id":1,"name":"customer1","country":"未知"}{"id":2,"name":"customer2","country":"不知道"}{"id":3,"name":"customer3","country":"美国"}{"id":4,"name":"customer4","country":"不是现在"}

在测试实体集时,您会看到"CustomersUnknown"只包含前2个条目。条目3和条目4与"like"表达式不匹配。

本例显示了where子句如何缩短。而且,它还显示了"不是"和"是"之间的区别!=

{"id":1,"name":"customer1","country":"美国"}

{"id":2,"name":"customer2","country":"GER"}

{"id":3,"name":"customer3"}

结果:"CustomersNotNull"集合将显示前2个条目"CustomersNotUSA"集合将只显示第二个条目

假设您创建了一个服务,并且您希望对允许使用该服务的用户有细粒度的限制。E、 例如,通常不允许管理员用户调用服务和查看客户数据