使用路径表达式node.js进行查询

2020-09-02 20:24发布

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

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


有关查询中路径表达式的问题。

此处中指出 在查询中受支持。

此处 方法可以返回cds.ql对象。

cds.ql对象与CQL对象相同,后者是已解析的CDS查询的AST。 解析是通过cds.parse.cql方法完成的,该方法仅接受CDS sql语句作为输入。 这意味着它不能与路径表达式一起使用,因为定义位于模型的关联中,并且解析器不知道模型。 当然,输出不包含join子句或mixin。

稍后,当CQL对象转换为SQL时,模型就在那里了,但是引用解析器没有检查模型中的关联路径。

AST/CQL中的Mixins正确,但是在cds-sql(转换器)中不支持此功能。

那么如何在查询中使用路径表达式? 将模型添加到查询解析器,或者更正sql转换器以读取关联? 或者,如尚无法实现(如mixin),何时计划此功能?

如果需要一个示例,只需在标准书店模型上运行此查询即可:

 cds.parse.cql("从Books.author中选择ID");
 

如果使用sqlite,将给您一个错误,指示Books_author表不存在。 由于引用解析器不知道作者是一个关联而不是表名。

非常感谢Martin

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

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


有关查询中路径表达式的问题。

此处中指出 在查询中受支持。

此处 方法可以返回cds.ql对象。

cds.ql对象与CQL对象相同,后者是已解析的CDS查询的AST。 解析是通过cds.parse.cql方法完成的,该方法仅接受CDS sql语句作为输入。 这意味着它不能与路径表达式一起使用,因为定义位于模型的关联中,并且解析器不知道模型。 当然,输出不包含join子句或mixin。

稍后,当CQL对象转换为SQL时,模型就在那里了,但是引用解析器没有检查模型中的关联路径。

AST/CQL中的Mixins正确,但是在cds-sql(转换器)中不支持此功能。

那么如何在查询中使用路径表达式? 将模型添加到查询解析器,或者更正sql转换器以读取关联? 或者,如尚无法实现(如mixin),何时计划此功能?

如果需要一个示例,只需在标准书店模型上运行此查询即可:

 cds.parse.cql("从Books.author中选择ID");
 

如果使用sqlite,将给您一个错误,指示Books_author表不存在。 由于引用解析器不知道作者是一个关联而不是表名。

非常感谢Martin

付费偷看设置
发送
8条回答
追夢秋陽
1楼 · 2020-09-02 21:06.采纳回答

我结束了这个问题,并了解到node.js尚不具备这些功能。 我将添加另一个问题以寻求路线图。

感谢您的帮助! 马丁

三十六小时_GS
2楼-- · 2020-09-02 20:56

在您的情况下,是的,因为您没有选择关联。 路径表达式的意思是:"在任何SQL子句中浏览关联和结构元素"。 在这种情况下,关联。

欢呼马丁

一周热门 更多>