SuperAPI AI 工具集

dataverse-sdk-use

数据与分析

查看项目

更新于 10-16 09:32

技能介绍

用途:通过 PowerPlatform Dataverse Client Python SDK 与 Microsoft Dataverse 交互,完成记录增删改查、OData/SQL/FetchXML 查询、表与列元数据管理、关系及文件上传等操作。

主要能力:客户端按命名空间划分,client.records 负责 CRUD 与 OData 查询,client.query 负责查询与搜索,client.tables 管理表元数据、列和关系,client.files 上传文件,client.batch 将多个操作合并为单个 HTTP 请求。create()、update() 传入列表时自动使用 Dataverse 原生批量操作;delete() 传列表时需设置 use_bulk_delete 才走批量删除。分页通过 page_size 控制,top 限制总数。查询优先使用 client.query.builder(table),支持 where(col(...)) 组合过滤、格式化值、嵌套 expand 和逐页流式执行;records.list_pages() 为仅支持字符串过滤的简易流式入口。结果对象 QueryResult 可迭代、索引、取长度,支持 .first() 与 .to_dataframe()。DataFrame 操作在 client.dataframe 下提供 create/update/delete。

使用方式:先从 azure.identity 获取凭据(开发可用 InteractiveBrowserCredential 或 AzureCliCredential,生产可用 ClientSecretCredential 或 CertificateCredential),再创建 DataverseClient,并推荐用 with 上下文管理器以启用 HTTP 连接池,URL 结尾不能带斜杠。表名和列名必须使用含自定义前缀的 schema name,不能用显示名称;查找字段绑定 @odata.bind 时导航属性名大小写敏感。

适用场景:需要在 Python 中读写 Dataverse 数据、批量导入导出、构建复杂查询或管理表结构与关系的开发工作。

限制:SQL 查询只读,仅支持单个 SELECT 及有限的 WHERE、TOP、ORDER BY 和简单别名,JOIN 与子查询可能不支持;使用 upsert 需先在 Dataverse 中为 alternate_key 所用列配置备用键,否则返回 400 错误;execute(by_page=True/False) 与 QueryBuilder.to_dataframe() 已弃用,应改用 execute_pages() 和 .execute().to_dataframe();client.dataframe.get() 也已弃用。资料未提供收费、价格、平台支持范围等更多信息。