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

文件存储_数据库同步方案_学生机

小七 141 0

云主机安全_美国_物联网控制系统

云应用程序编程模型是一个很好的框架,可以为您生成很多东西。但当幕后出现问题时你会怎么做?你怎么知道这个框架是做什么的?

在这个博客里,我要和大家分享一下你是怎么想出来的。这是一个非常小的技巧,快速自助建站,所以我会保持简短

我最近面对这个问题。构建和部署脚本工作得非常好。除了一种特定类型的请求外,运行项目和访问实体也不是问题。当我试图将其中一个实体上的关联与关联中某个字段上的筛选器一起展开时,出现了一个SQL错误。在我的例子中,这是"SQLITE\u错误:没有这样的列:a.",关于我的问题的更多细节在SAP社区的这篇文章中:

https://answers.sap.com/questions/13057758/cap-filter-not-working-on-expanded-entity.html

除了我的例子,如何做淘客,其他情况也可能发生。当使用一个框架时,框架中总是会有bug,西安大数据,也许你的代码不会。然后你可以开始调试所有的库来找出发生了什么…相反,我发现了另一个可以节省一些时间的技巧。

我用来找出框架做什么的解决方案是寻找框架生成的SQL命令。通常,当您运行"cdsrun"并访问一个实体时,您只会看到请求的信息。例如,云服务器网址,我访问实体"Authors":

这将在控制台中给出以下结果:

如何知道框架在数据库上运行的SQL查询?尝试在运行"cds run"时启用verbose?不是一个选项,这个选项是无效的…

那么我们怎样才能得到更多的信息呢?我们需要在运行"cdsrun"时启用调试。怎样?有两个选项:

使用全局环境变量"debug"简单地在命令行中运行命令"setdebug=true"(使用windows时)

在"default"中启用调试-环境.json"文件如果您还没有这个文件,请在您的项目的根目录中创建它

添加"debug":true到这个文件的根目录

当您现在运行"cds run"并使用过滤器或任何您喜欢的odata参数访问其中一个实体时,您将在控制台中看到生成的SQL。如果我现在转到实体"Authors",我将看到以下内容:

在启动命令"cds run"时,购物返现网,调试模式还将提供有关创建表、视图和填充数据的更多信息。

这就是我发现CAP生成了错误的SQL命令的原因。这可能意味着框架中有一个潜在的bug…它会在不调试框架的情况下立即告诉您出了什么问题。

希望这也能对您有所帮助