SqlPackage 的发行说明

下载最新版本

本文列出了 SqlPackage 的已发布版本提供的功能和修补程序。

如何阅读这些发行说明

每个部分中的“应用于”列的范围如下:

  • SqlPackage CLI - 命令行操作(发布、导入、导出、提取、Parquet、诊断、dotnet 工具)
  • MSBuild /SQL 项目 - SQL 项目生成(Microsoft.Build.Sql SDK、SQL Server Data Tools (SSDT) 集成)
  • DacFx API/架构比较 - Microsoft.SqlServer.DacFx NuGet API,架构比较
  • 平台 - ScriptDom、Microsoft.Data.SqlClient、.NET 支持、系统 DACPAC、兼容性默认值

当前版本 (170.x)

以下版本是当前支持的 SqlPackage 版本。

170.4.83.3 SqlPackage

发布日期: 2026 年 6 月 3 日

dotnet tool install -g microsoft.sqlpackage --version 170.4.83.3
Platform Download
Windows .NET 10 .zip 文件
Windows .NET Framework .msi 文件
macOS .NET 10 .zip 文件
Linux .NET 10 .zip 文件

Features

Feature Details 适用对象
数据库选项 添加了对数据库选项 AUTOMATIC_INDEX_COMPACTION的支持。 自动索引压缩文档 SqlPackage CLI; DacFx API / 架构比较器
动态数据掩码 添加了对Microsoft Fabric中Data Warehouse提取和发布操作的动态数据掩码的支持。 SqlPackage CLI; DacFx API / 架构比较器
Extract 添加了将数据库提取到 SQL 项目格式的支持。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Platform 引用 Microsoft.Data.SqlClient v6.1.5。 Platform
ScriptDom 已将 ScriptDom 更新为版本 180.18.1。 Platform

Fixes

Feature Details 适用对象
Deployment 修复了由架构绑定函数阻止 ALTER TABLE 操作导致的部署失败。 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了在部署到数据库时保留外部模型所有权信息的问题。 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了将表 CLUSTER BY 部署到 Microsoft Fabric 中的 Data Warehouse 时出现的一个问题。 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了将具有 IDENTITY 列的表部署到 Microsoft Fabric 的 Data Warehouse 时出现的问题。 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了一个问题:在部署过程中,系统会按全大写形式查找 DacPac 文件,这可能导致在某些区域设置(如土耳其语)下部署失败。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Import 修复了数据库触发器和 DDL 触发器在向表中插入数据时可能干扰导入过程的问题。 SqlPackage CLI; DacFx API / 架构比较器
模式比较 修复了以下问题:增加 varchar 字段长度会导致数据丢失警告,并且在存在行数据时某项检查会失败。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
SQL 项目 修复了在非 Windows 系统的计算机上从项目生成 SQL 文件时出现的问题。 MSBuild /SQL 项目
SQL 项目 修复了一个问题:使用 .scmp 文件作为源生成的脚本中包含不需要的 SET ANSI_NULLS OFF 命令。 GitHub 问题 MSBuild/SQL 项目;DacFx API/架构比较
模式比较 修复了当 .scmp 文件中缺少 TargetScripts 标记时异常消息不正确的问题。 GitHub 问题 DacFx API/架构比较
Deployment 修复了一个问题:将 IncludeCompositeObjects=trueSameDatabase 引用一起使用时,会出现 NullReferenceExceptionGitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Platform 改进了在 .NET Core 上指定不受支持的存储模型时的错误消息。 GitHub 问题 平台; SqlPackage CLI
Fabric 数据仓库 修复了以下问题:由于不支持IDENTITYSEED语法,将具有INCREMENT列的表部署到Fabric Data Warehouse失败。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器

170.3.93 SqlPackage

发布日期: 2026 年 2 月 10 日

dotnet tool install -g microsoft.sqlpackage --version 170.3.93
Platform Download
Windows .NET 10 .zip 文件
Windows .msi 文件
macOS .NET 10 .zip 文件
Linux .NET 10 .zip 文件

Features

Feature Details 适用对象
Deployment 添加了对数据库选项 ACCELERATED_DATABASE_RECOVERYOPTIMIZED_LOCKING. SqlPackage CLI; DacFx API / 架构比较器
Permissions 增强权限发布以包括 EXECUTE ON EXTERNAL MODEL 权限。 SqlPackage CLI; DacFx API / 架构比较器
Platform 向 DacFx 库和 SqlPackage CLI 添加了 .NET 10 支持。 SqlPackage dotnet tool 适用于 .NET 8 和 .NET 10。 平台;SqlPackage CLI;DacFx API/架构比较
Platform 向 DacFx 库添加了 .NET Standard 2.0 支持。 平台;DacFx API/架构比较
Platform 引用 Microsoft.Data.SqlClient v6.1.3。 Platform
ScriptDom 已将 ScriptDom 更新为版本 170.157.0。 Platform
Vector 扩展向量列支持,以允许更改基类型。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较

Fixes

Feature Details 适用对象
Deployment 修复了在 Microsoft Fabric 中部署到 SQL 数据库时遇到的错误,该错误发生于目标数据库包含安全策略的情况下。 SqlPackage CLI; DacFx API / 架构比较器
Export 修复了一个问题:由于布尔属性值使用了.dacpacTrue/值而不是小写的Falsetrue/值,导致导出的false文件无法通过XSD架构验证。 GitHub 问题 SqlPackage CLI
Import 修复了在不向用户发出警告的情况下,以无提示方式导入名称(如/"$)中具有特殊字符的表时无法导入数据的问题。 GitHub 问题 SqlPackage CLI
Ledger 修复了包含计算列的账本表在模型验证和生成过程中导致 NullReferenceException 的问题。 GitHub 问题 MSBuild/SQL 项目;DacFx API/架构比较
SQL 项目 修复了在表上生成具有内联聚集列存储索引定义的 SQL 项目失败并出现语法错误的问题。 GitHub 问题 MSBuild /SQL 项目
SQL 项目 修复了以下问题:表 NVARCHAR(MAX) 上的聚集列存储索引或其他 LOB 类型列错误地报告了矢量列不支持列存储索引的错误。 GitHub 问题 MSBuild /SQL 项目
Vector 修复了以下问题:使用 VECTOR_SEARCH 过程报告无法解析列引用的验证警告。 GitHub 问题 MSBuild/SQL 项目;DacFx API/架构比较

170.2.70 SqlPackage

发布日期: 2025 年 10 月 14 日

dotnet tool install -g microsoft.sqlpackage --version 170.2.70
Platform Download
Windows .NET 8 .zip 文件
Windows .msi 文件
macOS .NET 8 .zip 文件
Linux .NET 8 .zip 文件

Features

Feature Details 适用对象
外部模型 添加了对 Azure SQL 数据库和 SQL Server 2025(17.x)中的外部模型的支持,用于导入、导出、提取、部署和 SQL 项目生成。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
外部模型 添加了对函数 AI_GENERATE_CHUNKSAI_GENERATE_EMBEDDINGS 的支持。 SqlPackage CLI; DacFx API / 架构比较器
JSON 添加了对 Azure SQL 数据库和 SQL Server 2025(17.x)中的 JSON 索引的支持,用于导入、导出、提取、部署和 SQL 项目生成。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
JSON 添加了对 JSON 函数JSON_ARRAYAGGJSON_OBJECTAGG和 的支持JSON_QUERY SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
Platform SqlPackage .zip 生成 .NET SDK 已更新为 8.0.414 平台; SqlPackage CLI
正则表达式 添加了对 REGEXP_LIKE 函数的支持。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
ScriptDom 已将 ScriptDom 更新为版本 170.128.0。 Platform
Vector 添加了对 Azure SQL 数据库和 SQL Server 2025(17.x)中的矢量索引的支持,用于导入、导出、提取、部署和 SQL 项目生成。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
Vector 将向量数据类型的支持扩展到 SQL Server 2025 (17.x),并指定 32 位浮点大小。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较
Vector 添加了对 Vector 函数 VECTOR_SEARCH的支持。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较

Fixes

Feature Details 适用对象
数据掩码 修复了在项目生成期间无法识别日期/时间数据掩码函数的问题。 GitHub 问题 MSBuild /SQL 项目
外部模型 修复了由于外部模型依赖于数据库范围凭据导致项目构建失败的问题。 MSBuild /SQL 项目
JSON 修复了将 JSON 索引与默认 JSON 路径进行比较时的 bug。 DacFx API/架构比较;SqlPackage CLI
Platform 引用 Microsoft.Data.SqlClient v5.1.7。 Platform
XML 修复了在模型比较期间 XML 查询路径(xQuery)不被视为区分大小写的问题。 即使在不区分大小写的数据库上,xQuery 路径也区分大小写。 GitHub 问题 DacFx API/架构比较;SqlPackage CLI

170.1.61 SqlPackage

发布日期: 2025 年 7 月 30 日

dotnet tool install -g microsoft.sqlpackage --version 170.1.61
Platform Download
Windows .NET 8 .zip 文件
Windows .msi 文件
macOS .NET 8 .zip 文件
Linux .NET 8 .zip 文件

Features

Feature Details 适用对象
数据虚拟化 添加了对导入、导出、提取和发布操作中与 Azure SQL 数据库 数据虚拟化 相关的对象的支持。 SqlPackage CLI
数据虚拟化 将 Azure SQL 数据库添加到 parquet 文件发布预览,使 Azure Blob 存储和 parquet 文件能够用于将数据导入数据库。 将数据提取到 parquet 文件不适用于 Azure SQL 数据库,因为它依赖于 Azure SQL 数据库中CREATE EXTERNAL TABLE AS SELECT不可用的功能。 SqlPackage CLI
Deployment 添加了对发布属性 /p:IgnorePreDeployScript/p:IgnorePostDeployScript 的支持。 这些属性默认值为 false,启用这些属性会导致部署计划省略相应的脚本。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Permissions 添加了对 Microsoft Fabric 中 Azure SQL 数据库和 SQL 数据库的权限 ALTER ANY EXTERNAL MIRROR 的支持。 导出包含一个或多个 镜像表的数据库需要此权限。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Permissions 添加了对 SQL Server 2025(17.x)中权限 CREATE ANY EXTERNAL MODELALTER ANY EXTERNAL MODEL 的支持。 SqlPackage CLI; DacFx API / 架构比较器
Permissions 添加了对 SQL Server 2025 (17.x) 和 Azure SQL 数据库的权限 ALTER ANY INFORMATION PROTECTION 的支持。 SqlPackage CLI; DacFx API / 架构比较器
Platform SqlPackage .zip 生成 .NET SDK 已更新为 8.0.412。 平台; SqlPackage CLI
ScriptDom 已将 ScriptDom 更新为版本 170.0.64。 Platform
ScriptDom 更新 Fabric 平台中的数据仓库以在 ScriptDom 中使用 TSqlFabricDWParser 平台;DacFx API/架构比较

Fixes

Feature Details 适用对象
始终加密 (Always Encrypted) 修复了发布参数Interactive的选项/AzureKeyVaultAuthMethod无法正常工作的问题。 SqlPackage CLI
Deployment 修复了在部署中未正确设置DbScopedConfigMaxDOPSecondary的问题GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了发布包含外键约束的表时因 Microsoft Fabric 中的数据仓库不支持语法而导致失败的问题。 SqlPackage CLI
Deployment 修复了在 Microsoft Fabric 中部署到 SQL 数据库时包括服务器对象的问题。 Microsoft Fabric 中的 SQL 数据库中不支持服务器对象。 GitHub 问题 SqlPackage CLI
Deployment 修复了这样的问题:通过首先创建聚集索引来创建聚集列存储索引,这增加了部署开销和时间。 GitHub 问题 SqlPackage CLI
Extract 修复了从 Microsoft Fabric 中的 SQL 数据库中提取数据库会导致用户定义脚本不可用的问题。 GitHub 问题 SqlPackage CLI

170.0.94 SqlPackage

发布日期: 4月 15, 2025

dotnet tool install -g microsoft.sqlpackage --version 170.0.94
Platform Download
Windows .NET 8 .zip 文件
Windows .msi 文件
macOS .NET 8 .zip 文件
Linux .NET 8 .zip 文件

Features

Feature Details 适用对象
DACPACVerify 在预览工具 .dacpac 中,添加了对验证两个 文件内容的支持。 DacFx API/架构比较
Extract 添加了对将.dacpac文件解压缩到文件夹的支持。 该 /Action:Extract 命令与 /SourceFile:/TargetFile: 参数一起使用。 目标文件必须是一个文件夹,并且当指定源文件 ().dacpac 时,任何数据库连接属性都无效。 提取自/p:ExtractTarget=SchemaObjectType文件而不是源数据库时,需要.dacpac属性。 可执行文件 Dacunpack.exe 将从 DacFx.msi 安装程序中删除。 SqlPackage CLI; DacFx API / 架构比较器
Parquet 添加了对将 Azure Blob 存储中的 Parquet 文件与 SqlPackage 提取和发布操作配合使用时对数据类型时间戳、rowversion、uniqueidentifier、text、ntext、image、json、xml 和 vector 的支持。 SqlPackage CLI
Parquet 添加了在表中包含不支持的数据类型时,将表数据导出和导入到 BCP 文件的支持,同时利用 Azure Blob 存储中的 Parquet 文件通过 SqlPackage 完成其他数据的提取和发布操作。 一个示例数据类型是 sql_variant,包含该类型列的表将写入 BCP 文件,.dacpac 而其他所有表则写入 Azure Blob 存储中的 Parquet 文件。 SqlPackage CLI
Platform 将 .NET Framework 的 SqlPackage 版本更新为 .NET Framework 4.7.2。 平台; SqlPackage CLI
Platform 删除了对 .NET 6 的支持。 平台; SqlPackage CLI
ScriptDom 将 ScriptDom 更新到版本 170.18.0。 Platform
SQL 项目 Microsoft Fabric 中 Azure SQL 数据库和 SQL 数据库的默认兼容级别现在设置为 170。 有关详细信息,请参阅 Azure SQL 数据库中的数据库兼容性级别 170 和 Microsoft Fabric 中的 SQL 数据库 MSBuild /SQL 项目
Vector 目标平台 Azure SQL 数据库 现在支持矢量数据类型进行导入、导出、提取、部署和 SQL 项目构建。 SqlPackage CLI;MSBuild/SQL 项目;DacFx API/架构比较

Fixes

Feature Details 适用对象
Deployment 修复了以下问题:将更改部署到外部表会导致删除和重新创建所有外部表(如果修改后的表不包含任何 REJECT_VALUE 值或 REJECT_SAMPLE_VALUE)。 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了一个问题:如果列的排序规则已被指定且与数据库的默认排序规则匹配,在更改列长度以扩展时,会错误地出现数据丢失警告。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Deployment 修复了表上的敏感度分类更改导致重新创建索引的问题。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Export 优化了导出操作期间表大小估计的使用。 SqlPackage CLI
Extract 修复了使用数据库引用提取 .dacpac 失败的问题。 GitHub 问题 SqlPackage CLI; DacFx API / 架构比较器
Fabric 数据仓库 修复了在发布操作期间调用sp_refreshsqlmodule系统存储过程的问题。 Fabric 数据仓库不支持 sp_refreshsqlmodule ,这会导致部署失败。 SqlPackage CLI
Fabric 数据仓库 修复了从 Fabric 数据仓库中提取数据库时,表约束包含在 .dacpac 文件中但不包含在 .sql 文件中的问题。 GitHub 问题 SqlPackage CLI
SQL 项目 修复了问题:在 Visual Studio 中没有安装 SSDT 的情况下进行构建,会导致构建行为不正确。 GitHub 问题 MSBuild /SQL 项目
SQL 项目 修复了启用代码分析时构建警告在输出中重复的问题。 GitHub 问题 MSBuild /SQL 项目
SQL 项目 修复了 Service Broker 参数设置为变量会导致错误警告的问题。 GitHub 问题 MSBuild /SQL 项目

存档版本 (162.x 和更早版本)

可以在 SqlPackage 发行说明(存档)中找到版本 162.x 及更早版本的发行说明。