点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我正在尝试运行SAP CAP示例中提供的示例书店应用程序( https: //github.com/SAP-samples/cloud-cap-samples )。 使用默认的内存sqlite数据库(默认设置)时,它将按预期运行。 如果我尝试更改设置以使用持久性sqlite数据库,则服务将引发以下形式的错误:
SQLITE_ERROR:没有这样的表:localized_ <服务名称> _ <实体名称>
http://localhost:4004/browse/Books500
SQLITE_ERROR:没有这样的表:localized_CatalogService_Books
以下是我所做工作的详细步骤。 非常感谢您对可能出问题的地方以及如何解决问题有任何见解。 谢谢!
从"> https://github.com/SAP-samples/cloud- 上限样本
cd cloud-cap-samples/ 我 npm运行书店
默认配置在内存中运行sqlite数据库。 为了使用永久数据库,请进行以下更改:
cd包/书店 cds部署-至sqlite:my.db
cds deploy命令将创建一个持久数据库,并使用示例CSV数据文件填充必要的表。 它还使用cds配置更新package.json,以使用持久数据库而不是默认的内存数据库。 您应该看到如下控制台消息:
>从db/data/sap.capire.bookshop-Authors.csv中填充sap.capire.bookshop.Authors >从db/data/sap.capire.bookshop-Books.csv填充sap.capire.bookshop.Books >从db/data/sap.capire.bookshop-Books_texts.csv中填充sap.capire.bookshop.Books_texts >从db/data/sap.capire.bookshop-OrderItems.csv中填充sap.capire.bookshop.OrderItems >从db/data/sap.capire.bookshop-Orders.csv中填充sap.capire.bookshop.Orders >从db/data/sap.common-Currencies.csv填充sap.common.Currencies >从db/data/sap.common-Currencies_texts.csv中填充sap.common.Currencies_texts />已成功部署到./my.db >更新了./package.json
package.json应该具有更新的" cds"部分,如下所示-
" cds":{ "要求":{ "D b": { " kind":" sqlite", " model":" db/schema.cds", "凭据":{ "数据库":" my.db" } } } }
现在,如果我们触发命令" cds run",则cds应该开始使用持久性数据库进行服务。
cds运行
[cds]-连接到数据源-sqlite:my.db [cds]-在/admin上提供AdminService [cds]-在/browse处提供CatalogService-具有impl:srv/cat-service.js [cds]-从以下位置加载的服务定义: app/index.cds srv/admin-service.cds srv/cat-service.cds app/admin/fiori-service.cds 应用程序/浏览/fiori-service.cds 应用程序/订单/fiori-service.cds app/common.cds db/schema.cds ../../node_modules/@sap/cds/common.cds [cds]-发射时间:1303.835ms [cds]-服务器在http://localhost:4004上监听
现在,如果您转到链接http://localhost:4004/browse/Books,则会显示以下错误:
<错误xmlns =" http://docs.oasis-open.org/odata/ns/metadata">500
SQLITE_ERROR:没有这样的表:localized_CatalogService_Books
您可以将package.json中的`model`属性更改为
,然后重试吗?
很好的问题,格式正确,细节很多。 干得好!
亲爱的Ashish,
感谢您报告此问题,似乎是一个错误!
您使用的是哪个版本的@@ sap/cds`? 您可以通过键入" cds -v"来找到此信息。
我用@ sap/cds:3.21.3对其进行了测试,并且工作正常。
感谢和问候,
大卫
您好 DJ Adams ,谢谢! 从您最近在Youtube上发现的现场录音中学到了很多东西。 不能对您所做的努力感到足够的感谢!
而不是cds run命令,请尝试以下命令
npx nodemon -e cds,csv,properties -w app -w db -x" cds deploy && cds run"
Hi @ 克里斯蒂安·格奥尔基
问题在于此package.json文件。 我在json中删除了这些行,并且一切运行良好:
" requires":{" db":{" kind":" sqlite"," model":[" db"," srv"]," credentials":{" database":" sqlite.db"} }}
一些其他信息:
如果使用以下指南将同一应用程序部署到SAP HANA云: https: //cap.cloud.sap/docs/advanced/deploy-to-cloud ,该服务可以正常运行。 将持久数据库用作sqlite时,似乎出现了此问题。
一周热门 更多>