在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例

Access a Classic Schema from SAP Business Application Studio
本文主题:从 SAP Business Application Studio 中的 HDI 容器访问 classical schema 或复制 schema 中的数据。
本教程旨在成为跨容器访问的示例。选择简单的数据模型和加载机制来模拟使用 SAP Landscape Transformation 或 ABAP 模式等工具复制的模式。
使用以下代码创建 schema 和用户。 您还将创建一个简单的表,用作跨容器访问的示例。
您将创建一个 SQL 角色并将其分配给具有之前手动授予的权限的用户 PLUSR。 此用户将用于 HDI 容器和普通模式之间的连接,并将该角色授予 HDI 容器技术用户。

CREATE SCHEMA "PLAIN"; CREATE USER PLUSR PASSWORD "HanaRocks01" SET USERGROUP DEFAULT; ALTER USER PLUSR DISABLE PASSWORD LIFETIME; CREATE ROW TABLE "PLAIN"."REGIONS" (REGION NVARCHAR(5),DESCRIPTION NVARCHAR(100) ); CREATE ROLE CCROLE; grantSELECT, UPDATE, INSERT, DELETE, EXECUTE, SELECT METADATA ON SCHEMA "PLAIN" TO CCROLE with grant option; grantCCROLE to PLUSR with admin option;

执行 SQL,遇到如下错误信息:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

Could not execute 'CREATE SCHEMA "PLAIN"'
Error: (dberror) [258]: insufficient privilege: Detailed info for this error can be found with guid '5BB2F4D670E04D4FBE1D380DE6B7AF43'
可以执行如下存储过程,查看该 guid 对应的权限错误明细:
call SYS.GET_INSUFFICIENT_PRIVILEGE_ERROR_DETAILS ('7D14EECAF183444BB24540D8939821A4', ?)

解决方案:需要使用具有足够权限的数据库用户来执行上述 SQL 语句。
例如,DBADMIN 用户下的数据库资源,只有用户 DBADMIN 可以访问:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

切换用户为 DBADMIN 之后,权限错误消失:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

您已在 SAP HANA 数据库中创建了一个 plain schema. 在 SAP Business Application Studio 中创建数据库模块时,会自动生成一个 HDI 容器。
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

下图是执行系统存储过程 GET_INSUFFICIENT_PRIVILEGE_ERROR_DETAILS 的结果:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

成功创建了一个名为 PLAIN 的 schema:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

【在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例】schema owner:DBADMIN
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

这里能看到 SAP HANA cloud 的 endpoint,可以通过 Node.js 等编程语言访问:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

将下列这个链接的 csv 文件下载到本地,导入 PLAIN schema 的 REGIONS 数据库表:
https://raw.githubusercontent...
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

正在导入:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

import 成功了:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

我们现在有了一个包含表和数据的 schema,还创建了一个名为 PLUSR 的用户,该用户具有对该 schema 执行基本操作的权限。
现在,您将创建一个用户提供的服务,以通过 Business Application Studio 中 HANA DB 项目中的用户 PLUSR 访问该 schema.
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

点击 add database connection:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

刷新之后,CC_ACCESS 已经成为 HANA projects 的一部分了。
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

还可以使用 Business Application Studio Command 命令面板,创建新的 HANA Database Artifact:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

比如我们创建一个类型为 SQL View,即 hdbview 的 artifacts:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

VIEW "RegionTextsView" (REGION, DESCRIPTION ) as select REGION, DESCRIPTION from REGIONS

创建成功:
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

更多Jerry的原创文章,尽在:"汪子熙":
在|在 SAP Business Application Studio 里访问 SAP HANA Cloud 实例
文章图片

    推荐阅读