创建连接并在 Power Apps 中创建应用后,在 Oracle 数据库中创建、读取、更新和删除表行并创建、读取、更新和删除表行。 Oracle 数据库连接支持完全委派筛选、排序和其他函数,但不支持触发器或存储过程。
先决条件
- Oracle 9 及更高版本
- Oracle 数据访问客户端 (ODAC) 软件 11.2 或更高版本
- 安装本地数据网关
- 安装 Oracle 客户端 SDK
安装本地数据网关
若要安装网关,请按照 本教程中的步骤作。
本地数据网关充当桥梁,提供本地数据(不在云中的数据)与 Power BI、Power Automate、逻辑应用和 Power Apps 服务之间的快速安全数据传输。 可以将同一网关用于多个服务和多个数据源。 有关详细信息,请参阅 “了解网关”。
安装 Oracle 客户端
在与本地数据网关相同的计算机上,安装 ODAC 11.2 或更高版本。 例如,可以为 Windows x64 安装 64 位 ODAC 12c 版本 4(12.1.0.2.4), 或选择首选版本。 必须选择 Windows 安装程序版本,因为 xcopy 版本不适用于本地数据网关。 否则,如果尝试创建或使用连接,将显示错误,如已知问题列表所述。
从 Oracle 数据库中的表创建应用
转到 Power Apps。
从左窗格中选择“ 创建 ”。
在“ 开始”下,选择 “更多数据源”。
选择新建连接。
在连接列表中,选择 “Oracle 数据库”。
指定 Oracle 服务器的名称、用户名和密码。
如果需要 SID,请以此格式指定服务器:
ServerName/SID
选择要使用的网关,或安装一个网关。
如果在安装网关后未显示网关,请选择“ 刷新网关”列表。
选择 “创建 ”以创建连接。
选择 默认 数据集。
在表列表中,选择要使用的表。
选择 “连接 ”以创建应用。
Power Apps 创建一个具有三个屏幕的应用,并显示所选表中的数据:
- BrowseScreen1,其中列出了表中的所有条目。
- DetailScreen1 提供有关单个条目的详细信息。
- EditScreen1,用户可以在其中更新条目或创建条目。
后续步骤
- 若要保存生成的应用,请按 Ctrl-S。
- 若要自定义 BrowseScreen1 (默认显示),请参阅 “自定义布局”。
- 若要自定义 DetailsScreen1 或 EditScreen1,请参阅 “自定义窗体”。
已知问题、提示和故障排除
无法访问网关。
如果本地数据网关无法连接到云,则会出现此错误。 若要检查网关的状态,请登录到 powerapps.microsoft.com,选择 “网关”,然后选择要使用的网关。
确保网关正在运行,并可以连接到 Internet。 避免在可能已关闭或处于睡眠状态的计算机上安装网关。 另请尝试重启本地数据网关服务(PBIEgwService)。
System.Data.OracleClient 需要 Oracle 客户端软件版本 8.1.7 或更高版本。
如果 Oracle 客户端 SDK 未与本地数据网关安装在同一台计算机上,则会出现此错误。 若要解决此问题, 请安装官方提供程序。
表“[Tablename]”未定义任何键列。
如果连接到没有主键的表(Oracle 数据库连接需要),则会出现此错误。
Power Apps 中不支持存储过程、包含组合键的表和嵌套对象类型。 但是,支持使用 Power Automate 的存储过程。
跨环境的架构名称依赖关系。
将 Power Apps 连接到 Oracle 本地数据源时,架构前缀被视为表名称的一部分。 这意味着架构名称在每个环境中必须完全相同,例如开发、预生产以及生产。 如果在每个环境中使用不同的 Oracle 用户名或架构,则即使正确更新连接引用,应用可能无法在部署期间找到表。 这将导致 “找不到实体” 错误。
此限制是设计造成的:Power Apps 目前不支持使用环境变量进行动态架构名称替换。 若要防止部署失败,应在所有环境中使用相同的 Oracle 架构名称。 或者,可以考虑 Power Automate 流或 Dataverse 虚拟实体等解决方案,这为管理特定于环境的配置提供了更大的灵活性。