如何用Azure Data Factory将Business Central数据导入Azure SQL DB?求最优方案
问题描述
我尝试使用Azure Data Factory(ADF)将Business Central(BC)的数据同步至Azure SQL DB,操作步骤如下:
- 在BC门户顶部搜索“Web Services”,获取可查询数据的Web服务/API URL列表,以**科目表(Chart of Accounts)**端点为例
- 使用该端点的OData V4 URL在ADF中连接时,收到错误:
Web service access key is no longer supported as authentication. Please use OAuth
我了解到BC使用OAuth认证需创建Active Directory App,但此前未创建过此类应用,不确定该操作是否最优。请问有没有更简便的方法实现BC数据导入Azure SQL DB?
解决方案
以下是几种更简便的实现方式,无需手动注册独立AD应用:
1. 直接使用BC内置的Azure SQL导出功能
BC提供了一键导出数据到Azure SQL的内置功能,适合一次性或周期性手动同步:
- 打开BC中要导出的实体列表(比如科目表)
- 点击右上角的「导出」按钮,选择「Azure SQL Database」
- 按照向导输入Azure SQL的服务器名、数据库名,选择认证方式(SQL认证或Azure AD认证),确认导出即可完成数据同步。
2. 使用ADF内置的Business Central连接器
ADF提供了专门的Business Central连接器,简化了OAuth认证配置:
- 在ADF中创建新的数据源,选择「Business Central」类型
- 认证方式选择「OAuth 2.0」,使用ADF的托管身份进行认证(无需手动注册AD应用)
- 按照向导选择BC的环境、要同步的实体,直接映射到Azure SQL的目标表,配置同步周期即可。
3. 通过Power Automate快速搭建同步流
Power Automate的可视化界面更易操作,适合非技术人员快速实现定时同步:
- 创建一个定时触发的云流(比如每天凌晨同步)
- 添加「Business Central - 获取行」动作,选择目标实体
- 添加「Azure SQL - 批量插入行」动作,配置SQL连接并完成字段映射
- 保存流后即可自动执行数据同步。
内容的提问来源于stack exchange,提问作者JakeStillone
相关产品推荐
相关产品推荐

