共用方式為


SqlPackage 的版本資訊

下載最新版本

本文會列出 SqlPackage 發行版本所提供的功能與修正。

162.5.57 SqlPackage

發行日期: 2024 年 11 月 21 日

dotnet tool install -g microsoft.sqlpackage --version 162.5.57
平台 下載
Windows .NET 8 壓縮檔
Windows .msi 檔案
macOS .NET 8 壓縮檔
Linux .NET 8 壓縮檔

功能

功能 詳細資料
Dacpacs Synapse 無伺服器架構和 Azure SQL 資料庫的 dacpac 系統更新。
診斷 新增命令行參數以指定記錄層級。 /DiagnosticsLevel:
診斷 新增命令行參數以輸出 .zip 診斷套件,其中包含目標和來源模型資訊,以及診斷記錄、部署腳本和部署報表。 /DiagnosticPackageFile:
Fabric 資料倉儲 支持將資料發佈至需要數據表變更語句的 Fabric 數據倉儲資料庫。
Fabric 中的 SQL 資料庫 在目標平臺中新增對Fabric中的SQL資料庫的支援。

修正

特色 詳細資料
部署 修正此問題:如果預存程序或函式參考記憶體優化的系統版本化資料表,而資料庫中因由 DBCC CLONEDATABASE 建立而遺失了記憶體優化的系統版本化資料表,部署將會失敗的問題。 GitHub
部署 修正了一個問題,即在角色成員資格變更時,Synapse Serverless 部署會失敗。
部署 修正未設定主要金鑰上密碼時,具有主要金鑰的部署會失敗的問題。 DevCom
匯入 修正 nvarchar(max)、varchar(max) 和 varbinary(max) 類型的叢集數據行存放區索引無法匯入的問題。 GitHub
匯入 修正使用 DDL 觸發程式匯入資料庫時失敗的問題,因為在數據匯入完成之前會啟用觸發程式。

162.4.92 SqlPackage

發行日期:2024 年 9 月 18 日

dotnet tool install -g microsoft.sqlpackage --version 162.4.92
平台 下載
Windows .NET 8 壓縮檔
Windows .msi 檔案
macOS .NET 8 壓縮檔
Linux .NET 8 壓縮檔

功能

功能 詳細資料
部署 在 Azure SQL 資料庫中,新的資料庫的預設相容性層級現在已設定為 160。 部落格文章
JSON 目標平台 Azure SQL Database 現在支援 JSON 資料類型,以便匯入、匯出、擷取、部署和 SQL 專案建置。

修正

功能 詳細資料
部署 修正包含位元轉換函式的分割函數在部署期間會導致資料表重建的問題。 GitHub 問題
部署 修正了一個問題,即將變更部署到某個外部資料表時,會導致所有外部資料表被移除並重新建立。 GitHub 問題
部署 修正了一個問題,即在 system_time 資料行名稱中含有空格的時態表會產生無效的部署腳本。 Developer Community
部署 修正此問題:在資料表中將欄位類型在可進行類型轉換的類型之間變更時,會在部署期間導致不必要的資料表重建。 GitHub 問題
部署 修正針對 Azure SQL 資料庫 產生的部署腳本會包含忽略的語句,無論 SQL 專案設定為何,都會關閉 查詢存放區 的問題。
匯出 修正在序列化期間 bacpac 導出會失敗,但追蹤記錄檔不會包含失敗訊息的問題。 GitHub 問題
提取 修正將資料表定義 .sql 寫入檔案時,擷取作業會將資料表上的索引重新排序的問題。
JSON 修正了一個問題,即isjson函數的json_type_constraint參數未被識別為第二個參數。 GitHub 問題
平台 參考 Microsoft.Data.SqlClient v5.1.6。
模式比較 修正了一個問題,即結構描述比較預期所有語句都在同一個批次中,因此導致語句重複。 GitHub 問題
ScriptDOM 參考 ScriptDOM 16.1.9142

162.3.566 SqlPackage

發行日期:2024 年 6 月 24 日

dotnet tool install -g microsoft.sqlpackage --version 162.3.566
平台 下載
Windows .NET 8 壓縮檔
Windows .msi 檔案
macOS .NET 8 壓縮檔
Linux .NET 8 壓縮檔

修正

功能 詳細資料
部署 修正部署投稿人 API DeploymentPlanModifier 方法設定為靜態方法的問題。 GitHub 問題
平台 SqlPackage .zip組建 .NET SDK 會從 8.0.301 更新為 8.0.302

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

162.3.563 SqlPackage

發行日期:2024 年 6 月 6 日

dotnet tool install -g microsoft.sqlpackage --version 162.3.563
平台 下載
Windows .NET 8 壓縮檔
Windows .msi 檔案
macOS .NET 8 壓縮檔
Linux .NET 8 壓縮檔

功能

功能 詳細資料
Microsoft Fabric 新增了對目標平臺 SqlDbFabricDatabaseSchemaProvider 的預覽支援,以代表 Microsoft Fabric 的鏡像 SQL 資料庫。 此目標平台中支持的資料類型僅限於鏡像至 Microsoft Fabric 支援的資料型別。
平台 參考 Microsoft.Data.SqlClient v5.1.5。
ScriptDOM 參考 ScriptDOM 161.9109

修正

功能 詳細資料
程式碼分析 修正程式碼分析規則的建置輸出不符合 MSBuild 診斷格式指南的問題。 GitHub 問題
部署 修正部署已設定為“上線”屬性且具有大型物件類型 (LOB) 的索引時出現失敗的問題。
部署 修正在時態表上部署資料行加密失敗的問題。 GitHub 問題
部署 還原所做的變更,以避免在專案建置完成後儲存參考 dacpac 的絕對路徑,因為這樣新的行為會導致與舊版相容性的問題。 GitHub 問題
擷取 修正了多資料行分配 (MCD) 資料表中使用的資料行被錯誤地指令為允許 NULL 值的問題。
ScriptDOM 修正選取未指定欄位 (*) 從資料表值函數 OPEN_JSON 時會導致 SQL 專案無法建置的問題。 GitHub 問題

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
部署 部署貢獻者 API 的 DeploymentPlanModifier 方法設定為靜態方法。 已在 SqlPackage 162.3.566 中修正。
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

162.2.111 SqlPackage

發行日期:2024 年 2 月 27 日

dotnet tool install -g microsoft.sqlpackage --version 162.2.111
平台 下載
Windows .NET 8 壓縮檔
Windows .msi 檔案
macOS .NET 8 壓縮檔
Linux .NET 8 壓縮檔

功能

功能 詳細資料
平台 參考 Microsoft.Data.SqlClient v5.1.4。
平台 SqlPackage 的獨立下載 (.zip) 現已使用 .NET 8 建置。
平台 SqlPackage dotnet tool 現在可同時用於 .NET 6 和 .NET 8。 GitHub 問題
平台 SqlPackage 預覽版本現已在 dotnet tool 訂閱源中提供。
Azure Synapse Analytics 新增了 DW_COMPATIBILITY_LEVEL 專案屬性的驗證,以確保在專案建置期間此值在 0、10、20、30、40、50 和 9,000 的有效選項內。
部署 新增對 ONLINE 索引作業的支援。 線上索引作業可以作為 SqlPackage 命令列發佈屬性/p:PerformIndexOperationsOnline 套用,也可以作為 SQL 專案模型中的元件套用。 GitHub 問題
拼花地板 對 Parquet 檔案中資料的擷取和發佈作業進行了改進,包括透過平行匯入資料和減少記錄檔大小來提高效能。

修正

功能 詳細資料
部署 修正了在檢視的 apply 子句中使用函數的套件無法部署的問題。 先前的錯誤訊息是找不到函數,因為檢視在函數之前被錯誤地部署。 GitHub 問題
部署 修正了無法正確識別 NATIVE_COMPILATIONSCHEMABINDING 等函數關鍵字並將其包含在部署指令碼中的問題。 GitHub 問題開發人員社群
部署 修正了一個問題:在 values 子句中對系統資料表的參考會導致構建失敗,並顯示「值不能為 Null」的錯誤訊息。 Developer Community
部署 修正了一個問題:在專案建置後,參考的 dacpac 的絕對路徑被儲存在 dacpac 中,而非相對路徑。 GitHub 問題
部署 修正問題:如果要建立另一個停用的索引,則建立停用的叢集索引會導致部署失敗。 GitHub 問題
部署 修正了使用者定義資料類型的同義字導致參考無法解析的問題。 GitHub 問題
擷取 修正問題:如果為不遵循 major.minor.build 格式的套件指定了版本,則無法設定 DacVersion 屬性。 GitHub 問題
匯入 修正問題:某些定序 (包括 Chinese_PRC_CI_AS) 無法匯入,並顯示「不支援此定序」的錯誤訊息。 GitHub 問題
模式比較 修正問題:具有 UTF8 定序的資料庫無法提供正確結果。
模式比較 修正問題:在評估 Synapse 無伺服器 SQL 集區時,結構描述比較不包括外部資料來源、外部檔案格式和外部資料表物件。
安全性 修正了 .NET 上的 SqlPackage 對通用驗證 (/ua) 的支援,該驗證支援具有多重要素驗證 (MFA) 的 Microsoft Entra ID 驗證。
系統 Dacpacs 修正問題:pdw* 檢視未包含在 Synapse 資料倉儲 master.dacpac 中。 GitHub 問題開發人員社群

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

162.1.172 SqlPackage

發行日期:2024 年 1 月 9 日

dotnet tool install -g microsoft.sqlpackage --version 162.1.172
平台 下載
Windows .NET 6 壓縮檔
Windows .msi 檔案
macOS .NET 6 壓縮檔
Linux .NET 6 壓縮檔

修正

功能 詳細資料
平台 參考 Microsoft.Data.SqlClient v5.1.3。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

162.1.167 SqlPackage

發行日期:2023 年 10 月 19 日

平台 下載
Windows .NET 6 壓縮檔
Windows .msi 檔案
macOS .NET 6 壓縮檔
Linux .NET 6 壓縮檔

功能

功能 詳細資料
平台 參考 Microsoft.Data.SqlClient v5.1.1。
Azure Synapse Analytics 在 Azure Synapse Analytics 無伺服器 SQL 集區的 PARSER_VERSION 中新增對 FORMAT_OPTIONS 的支援。 文件
Azure Synapse Analytics CREATE VIEW 中為 Azure Synapse Analytics 專用 SQL 集區新增對多欄位分布 (MCD) 的支援。 GitHub 問題
Azure Synapse Analytics 新增對 Parquet 檔案擷取作業的 /p:TableData 屬性的支援,從而可以指定要匯出資料的資料表。 GitHub 問題
Fabric 資料倉儲 新增對 Fabric 資料倉儲資料庫的擷取和發佈的支援。 發佈功能不支援需要改變現有資料表的變更。 在 SQL 資料庫專案中,目標平台列舉值為 SqlDwUnifiedDatabaseSchemaProvider
拼花地板 新增預覽支援功能,可透過 Azure SQL 受控執行個體和 SQL Server 2022,對 Azure Blob 儲存體中以 Parquet 檔案格式儲存的資料進行擷取和發佈。 不支援 Azure SQL 資料庫和 SQL Server 2019 及更早版本。 資料必須屬於 CETAS 支援的資料類型。 在許多情況下,使用 Parquet 檔案擷取和發佈比匯入/匯出 bacpac 檔案可提供更高的效能。
發布 /p:AllowTableRecreation 屬性新增到發佈作業中。 預設值 (true) 與先前的行為一致,其中資料表變更可能需要重新建立資料表,同時保留資料表資料,但部署可能需要大量時間,或者變更追蹤資料可能會遺失。 如果任何資料表需要重新建立,將屬性 /p:AllowTableRecreation 設定為 false 會導致部署無法啟動。 GitHub 問題

修正

功能 詳細資料
申請 修正了當輸出被重新導向時,SqlPackage CLI 會擲回例外狀況的問題。 GitHub 問題
Azure Synapse Analytics 修正問題:發佈作業無法剖析包含 filepath()filename()函數的陳述式。
匯入 將 bacpac 匯入至不支援 AUTO_DROP 的 SQL Server 版本時,AUTO_DROP 選項將從統計資料中排除。
匯入 修正了當匯入包含 ALTER 或 CREATE 可用性群組的資料庫時,匯入無法成功的問題。
匯出 修正在 bacpac 匯出中不當包含已刪除的總賬欄位,導致匯入時顯示錯誤訊息的問題。
匯出 修正匯出至 bacpac 檔案時 /p:CompressionOption 未被遵循的問題。
擷取 修正問題:非 dacpac 選項的 /p:ExtractTarget 選項仍要求目標檔案具有 .dacpac 副檔名。 GitHub 問題
總帳 修正問題:由於嘗試為已卸除的資料表建立權限,匯入或發佈包含已卸除的總帳資料表的資料庫失敗。
總帳 修正了一個問題:當匯入包含已卸除的總帳資料表的資料庫時,由於試圖將資料匯入已卸除的資料表而導致匯入失敗。
PolyBase 修正問題:無法匯出或擷取具有 RDBMS 外部資料表的 Azure SQL 受控執行個體資料庫。 GitHub 問題
發布 DropObjectsNotInSource 不會卸除屬於權限或角色成員資格的物件。 使用 DropPermissionsNotInSource 或 DropRoleMembersNotInSource 來啟用卸除權限或角色成員資格。 GitHub 問題
發布 修正問題:在連線的使用者無權存取 Azure SQL 資料庫中的 master 時,發佈作業失敗。
發布 修正了一個問題,即包含與資料行加密互動的部署會遇到間歇性執行逾時錯誤。
發布 修正問題:如果 RegisterDataTierApplication 設定為 true,則部署使用 .NET/.NET Core 組建的 dacpac 將失敗。 GitHub 問題
發布 修正了一個問題:當修改系統版本管理的資料表並創建新結構描述時,會導致部署失敗。 GitHub 問題

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

162.0.52 SqlPackage

發行日期:2023 年 5 月 11 日

平台 下載 版本
Windows .NET 6 壓縮檔 162.0.52
Windows .msi 檔案 162.0.52
macOS .NET 6 壓縮檔 162.0.52
Linux .NET 6 壓縮檔 162.0.52

功能

功能 詳細資料
平台 SqlPackage 現在會收集使用狀況資料,包括匿名功能使用狀況和診斷資料。 如需詳細資訊,請參閱使用量資料收集
平台 參考 Microsoft.Data.SqlClient v5.1.0
Azure Synapse Analytics 新增對 DW_COMPATIBILITY_LEVEL 的支援。
ScriptDOM ScriptDOM 現在作為 NuGet 上的獨立套件提供,並在 GitHub 上開放原始碼。
系統 Dacpacs mastermsdb 系統 dacpac 現在可在 NuGet 上以 Microsoft.SqlServer.Dacpacs.MasterMicrosoft.SqlServer.Dacpacs.Msdb 的形式取得。 如需有關系統 dacpac 和取用 dacpac 作為套件參考的詳細資訊,請參閱 DacFx GitHub 存放庫

修正

功能 詳細資料
Azure Synapse Analytics 修正了在連線至 Azure Synapse Analytics 無伺服器 SQL 集區時,預設命令逾時未能正確設置的問題。
Azure Synapse Analytics 修正問題:Azure Synapse Analytics 無伺服器 SQL 集區未正確判斷預設資料和記錄路徑。
Azure Synapse Analytics 修正了 Azure Synapse Analytics 無伺服器 SQL 集區未正確判斷預設登入、使用者和結構描述的問題。
Azure SQL Database 修正了暫存歷程記錄保留未被正確識別為未設定(null)的問題。
部署 修正了一個問題:部署計畫無法偵測 FROM VALUES 子句中的子查詢涉及的資料表或檢視的相依性。 GitHub 問題
部署 修正問題:當目標資料庫中包含繫結至資料行的規則時,部署會失敗。
部署 修正了一個問題:當目標資料庫中包含繫結至使用者定義型別的資料行的規則時,部署會失敗。 GitHub 問題
部署 修正問題:在對資料表進行其他變更時,時態表的保留期間將重設為預設值。 GitHub 問題
部署 修正了一個問題:當資料表指定了壓縮選項時,主鍵的更新未被包含在部署中。
部署 修正問題:即使未對資料表進行任何變更,也會重新組建分區表上的非叢集索引。 GitHub 問題
部署 修正問題:在未對系統版本控制的資料表進行任何變更 (對資料行進行重新排序除外) 時,記錄資料表不接受 ignorecolumnorder 屬性。
部署 修正問題:在資料表定義包含 SQLCMD 變數時,儘管沒有任何變更,外部資料表仍會卸除並重新部署。 GitHub 問題
匯出 修正問題:在匯出作業期間提供的診斷資訊未正確地報告資料表大小 (以 KB 為單位,而不是以位元組為單位)。 GitHub 問題
匯入 修正問題:在匯入至 Azure SQL 資料庫期間無法建立 Azure Active Directory 使用者,從而導致匯入失敗。 GitHub 問題
總帳 修正了一個問題:當 Ledger 歷史資料表或檢視具有無效的雙部分名稱時,SqlPackage 無法正確識別錯誤。
權限 修正問題:無法辨識資料庫模型中指派給使用者的權限,導致專案組建或 SqlPackage 作業失敗。
查詢存放區 修正了一個問題,即flush_interval_seconds查詢存放區選項未能正確驗證,要求的最小值應為 60 秒。
SQL Server 2022 修正問題:無法將 DATETRUNC 函數辨識為內建函數。 開發人員社群報告
SQL Server 2022 修正問題:無法將 DATE_BUCKET 函數辨識為內建函數。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
匯入 使用 SqlPackage 匯出建立的 bacpac 檔案 (透過 .msi 檔案安裝的情況除外) 在大於 4 GB 時,可能無法使用 Azure 入口網站和 Azure PowerShell 匯入。 使用 SqlPackage 匯入 bacpac,或使用透過 .msi 檔案安裝的 SqlPackage 建立 bacpac 檔案。
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

161.8089.0 SqlPackage

發行日期:2023 年 2 月 13 日

平台 下載 版本 構建
Windows .NET 6 壓縮檔 161.8089.0 16.1.8089.0
Windows .msi 檔案 161.8089.0 16.1.8089.0
macOS .NET 6 壓縮檔 161.8089.0 16.1.8089.0
Linux .NET 6 壓縮檔 161.8089.0 16.1.8089.0

重要

SqlPackage 161 版預設會加密資料庫連線。 先前使用自我簽署憑證或沒有加密的成功連線,在未更新 SqlPackage 參數的情況下,可能無法與 v161 連線。 如需詳細資訊,請參閱https://aka.ms/dacfx-connection

功能

功能 詳細資料
部署 在發佈時,當 GenerateSmartDefaults 屬性設置為 true 時,新增從預設約束填入數值的功能。 GitHub 問題
Azure Synapse Analytics 在擷取和發佈作業中新增無伺服器 SQL 集區的支援。
SQL Server 2022 新增已排序叢集資料行存放區索引的支援。

修正

功能 詳細資料
部署 修正問題:發佈至 Linux 上的 SQL 因預設資料和記錄路徑為空白而失敗。 GitHub 問題
部署 修正問題:發佈具有檔案格式變更的外部資料表會導致錯誤。 GitHub 問題
部署 修正了一個問題:若無法存取資料行加密金鑰(CEK),使用隨機化加密進行加密的資料行在發佈時不會立即失敗,而是會將部署錯誤延後至資料行加密步驟出現。
重構 修正問題:系統版本資料表上已重新命名的資料行會導致系統版本設定關閉,而不會重新開啟。 GitHub 問題
平台 修正問題:RHEL 9 上的 SqlPackage 作業因加密錯誤而失敗。 改為使用 .NET 6 執行階段 6.0.10 版。 GitHub 問題
模式比較 修正問題:DoNotEvaluateSqlCmdVariables 屬性會導致 PublishScript 的 SqlCmd 變數無法在來源和目標上評估,而不只是來源。
ScriptDOM 修正 REJECT_SAMPLE_VALUE 的外部資料表支援。
ScriptDOM 修正問題:無法將壓縮選項套用至具有叢集索引的資料表。
SQL 專案 修正了一個問題,該問題使 QueryStoreFlushInterval 的有效選項被錯誤地報告為無效。 開發人員社群報告

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

161.6374.0 SqlPackage

發行日期:2022 年 11 月 9 日

平台 下載 版本 建造
Windows .NET 6 壓縮檔 161.6374.0 16.1.6374.0
Windows .msi 檔案 161.6374.0 16.1.6374.0
macOS .NET 6 壓縮檔 161.6374.0 16.1.6374.0
Linux .NET 6 壓縮檔 161.6374.0 16.1.6374.0

重要

SqlPackage 161 版預設會加密資料庫連線。 先前使用自我簽署憑證或沒有加密的成功連線,在未更新 SqlPackage 參數的情況下,可能無法與 v161 連線。 如需詳細資訊,請參閱https://aka.ms/dacfx-connection

功能

功能 詳細資料
平台 變更連線以使用加密,且預設不信任伺服器憑證。 這是對於使用自我簽署憑證或預設無加密連線的重大變更。 如需詳細資訊,請參閱這篇專門的文章
平台 參考 Microsoft.Data.SqlClient v5.0.1
平台 SqlPackage 現在可以在 Windows、macOS 和 Linux 平台上以安裝的形式提供dotnet tool
始終加密 增加對 VBS (虛擬化型安全性) 與安全區域的支援。
連線能力 將 TDS 8.0 以及 /SourceHostNameInCertificate/TargetHostNameInCertificate 的參數支援新增至 SqlPackage 作業。
複製 新增 sp_addpublication 和點對點複寫的支援。
ScriptDOM 新增對`isn't DISTINCT FROM` 語法以及謂詞子查詢的支援。
伺服器層級角色 新增其他固定伺服器角色的支援:MS_DatabaseConnector、MS_LoginManager、MS_DatabaseManager、MS_ServerStateManager、MS_ServerStateReader、MS_ServerPerformanceStateReader、MS_ServerSecurityStateReader、MS_DefinitionReader、MS_PerformanceDefinitionReader、MS_SecurityDefinitionReader。
SQL Server 2022 新增與 SQL Server 2022 相關聯 T-SQL 函數變更的支援:GREATEST()、LEAST()、STRING_SPLIT()、DATETRUNC()、LTRIM()、RTRIM() 和 TRIM()。
SQL Server 2022 新增與 SQL Server 2022 相關聯 JSON 函數變更的支援:ISJSON()、JSON_PATH_EXISTS()、JSON_OBJECT() 和 JSON_ARRAY()。
SQL Server 2022 新增與 SQL Server 2022 相關聯位元操作函數的支援:LEFT_SHIFT()、RIGHT_SHIFT()、BIT_COUNT()、GET_BIT() 和 SET_BIT()。
SQL Server 2022 新增與 SQL Server 2022 相關聯時間序列函數變更的支援:DATE_BUCKET()、GENERATE_SERIES()、FIRST_VALUE() 和 LAST_VALUE()。
統計資料 新增 STATISTICS AUTO_DROP 選項的支援。
XML 壓縮 新增 XML 索引上 XML 壓縮的支援。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

19.2 SqlPackage

發行日期:2022 年 9 月 22 日

平台 下載 版本 構建
Windows .msi 檔案 19.2 16.0.6296.0
macOS .NET 6 壓縮檔 19.2 16.0.6296.0
Linux .NET 6 壓縮檔 19.2 16.0.6296.0
Windows .NET 6 壓縮檔 19.2 16.0.6296.0

功能

功能 詳細資料
連線池化 如果環境變數 CONNECTION_POOLING_ENABLED 設定為 True,則啟用所有連線的連線共用。 建議對進行 Azure Active Directory 使用者名稱和密碼連線作業時採用,以防止 Microsoft Authentication Library (MSAL) 節流。
部署選項 在 DacFx .NET API 中呈現部署選項的易記名稱。
動態資料遮罩 在匯入/匯出和擷取/發佈中增加對細粒度 UNMASK 權限的支援。
總帳 在用於驗證和匯出/擷取的結構描述模型中新增 SQL 總帳記錄資料表,不會將記錄資料表匯入或發佈至資料庫。
平台 SqlPackage 現在內建於 .NET 6
SQL Server 2022 新增對權限 ALTER LEDGER CONFIGURATION、VIEW PERFORMANCE DEFINITION、VIEW ANY PERFORMANCE DEFINITION 的支援功能。 深入了解權限文件中提供的權限定義。
XML 壓縮 ScriptDOM、匯入/匯出和擷取/發佈中的 XML 壓縮支援。 如需 XML 資料和 XML 壓縮的詳細資訊,請參閱 XML 資料文件

修正

功能 詳細資料
匯出 修正了一個問題,即當資料表具有由計算資料行產生的統計資料時,匯出會失敗。
匯入 修正了導致匯入過程卡在 95% 的問題。
ScriptDOM 修正問題:STRING_SPLIT 不支援 NULL 序數值

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。
XML 壓縮 SqlPackage 尚不支援 XML 索引的 XML 壓縮。 N/A

19.1 SqlPackage

發行日期:2022 年 5 月 24 日

平台 下載 版本 構建
Windows .msi 檔案 19.1 16.0.6161.0
macOS .NET Core 壓縮檔 19.1 16.0.6161.0
Linux .NET Core 壓縮檔 19.1 16.0.6161.0
Windows .NET Core 壓縮檔 19.1 16.0.6161.0

功能

功能 詳細資料
Azure Synapse Analytics 新增原生外部資料來源的支援。
提取 在擷取作業上新增 ExtractTarget 屬性的支援。 "現在,擷取功能支援將每個物件擷取為 .sql 檔案,並依照單一資料夾、物件類型、結構、或物件類型及結構來組織。"
ScriptDOM 新增 isn't DISTINCT FROM 語法的支援。

修正

功能 詳細資料
Azure Synapse Analytics 修正資料表名稱變更的發佈作業,其中資料表名稱包含 '/' 字元。
匯出 修復具有相依關係的 SQL 總帳記錄資料表的匯出問題。
擷取 修正了在儲存過程中使用具有函數的 offset 子句時出現的擷取作業失敗。
擷取 修復總帳資料表擷取作業的警告訊息。
一般 修正命令逾時設定未正確套用的問題。
匯入 修正問題:匯入時停用全文檢索索引。
發布 修正問題:當新增資料行時,發佈作業會卸除並建立叢集資料行存放區索引。
發布 修正問題:當資料分割函數包含前置零時,圖形資料表無法部署。
ScriptDOM 修正了無法剖析括號內的 IIF 條件的問題。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
部署 使用 Azure Active Directory 使用者/密碼驗證進行部署時,由於 Microsoft Authentication Library (MSAL) 節流,而使得部署時間增加。 如需詳細資訊,請參閱 GitHub 使用替代的驗證方法,例如 Azure Active Directory 服務主體
部署 適用於 Windows、macOS 和 Linux 的 .NET Core 上的 SqlPackage 在發佈作業期間失敗,當 Always Encrypted 與安全封裝一起使用就地加密時,會出現錯誤訊息「無法識別的設定區段 system.diagnostics」。 從 SqlPackage 資料夾中移除檔案 sqlpackage.dll.config
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

19.0 SqlPackage

發行日期:2022 年 1 月 25 日

平台 下載 版本 構建
Windows .msi 檔案 19.0 16.0.5400.1
macOS .NET Core 壓縮檔 19.0 16.0.5400.1
Linux .NET Core 壓縮檔 19.0 16.0.5400.1
Windows .NET Core 壓縮檔 19.0 16.0.5400.1

功能

功能 詳細資料
始終加密 新增對 Always Encrypted 欄位的就地加密支援。 發佈現在可以利用伺服器端的安全區域來直接加密、解密和重新加密資料庫欄位。 這可避免在資料庫外部移動資料的費用。 請參閱使用具有安全記憶體保護區的 Always Encrypted 就地設定資料行加密中有關就地加密的必要條件。 注意:僅支援以離線方法進行就地加密。
Azure Synapse Analytics 新增資料行層級對稱式加密的支援。
總帳 新增使用總帳資料表匯出和匯入資料庫的支援。 下列限制適用於匯出:不會移轉總帳記錄資料表及已卸除的總帳資料表;不會移轉總帳系統檢視表中的 GENERATED ALWAYS 資料行和資料;會忽略資料庫層級總帳屬性的值。
平台 新增 .NET 6 作為目標架構的支援
平台 .NET Framework 版本中參考 Microsoft.Data.SqlClient (3.0),而不是 System.Data.SqlClient。 將 Microsoft.Data.SqlClient 的 .NET Core 版本從 2.1.3 升級為 3.0。
平台 將 .NET Framework 目標版本升級為 .NET 4.6.2
ScriptDOM 增加了對 Sql160 剖析器的支援。

修正

功能 詳細資料
部署 修正預存程序中欄內表格分佈解析的問題。
部署 修正發行作業時 [卸除不在來源中的物件] 選項出現的問題。
部署 修正使用包含敏感度分類的時態表部署 dacpac 的問題。
部署 修正了一個錯誤,即在設定 DoNotEvaluateSqlCmdVariables 為 true 的情況下,變數仍然會被驗證。
擷取 根據 includeCompositeObjects 選擇,修正所參考 dacpac 的重構紀錄。
匯入 修正匯入目標伺服器不支援的資料庫範圍設定的問題
SQL 專案 修正了問題:當增量統計應用於主索引鍵時,導致專案建置出現問題。
SQL 專案 修正使用檔案資料表建置專案的問題。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)。 N/A
部署 使用 Azure Active Directory 使用者/密碼驗證進行部署時,由於 Microsoft Authentication Library (MSAL) 節流,而使得部署時間增加。 如需詳細資訊,請參閱 GitHub 使用替代的驗證方法,例如 Azure Active Directory 服務主體
ScriptDOM 剖析非常大的檔案可能會導致堆疊溢位。

18.8 SqlPackage

發行日期:2021 年 10 月 4 日

平台 下載 版本 構建
Windows .msi 檔案 18.8 15.0.5282.3
macOS .NET Core 壓縮檔 18.8 15.0.5282.3
Linux .NET Core 壓縮檔 18.8 15.0.5282.3
Windows .NET Core 壓縮檔 18.8 15.0.5282.3

功能

功能 詳細資料
匯出 新增選項 VerifyExtraction,以變更匯出時的結構描述模型驗證行為
Azure SQL 支援總帳資料庫和資料表,包括匯入和匯出動作。
平台 將 Microsoft.Data.SqlClient 的 .NET Core 版本從 2.0.0 升級為 2.1.3
Azure Synapse Analytics 支援使用對稱金鑰進行資料行加密
Azure Synapse Analytics 支援使用 CREATE CERTIFICATE 進行資料行加密
Azure Synapse Analytics 支援 MERGE 陳述式
部署 AE 欄位的變數參數化,新的發佈屬性 IsAlwaysEncryptedParameterizationEnabled
部署 支援 IgnoreWorkloadClassifiers 與 IgnoreDatabaseWorkloadGroups 發佈屬性
部署 對外部語言執行環境的支援
ScriptDOM 支援總帳資料庫和資料表
ScriptDOM 支援內嵌索引定義中的 INCLUDE 欄位

修正

功能 詳細資料
部署 修正了一個問題,該問題導致將外部使用者部署到 Azure SQL 受控實例時會失敗
部署 在關閉系統版本之前,改進調整與時間表相關的部署順序,以便先移除相依性。
部署 修正 Always Encrypted 部署錯誤,錯誤訊息為「物件名稱 '#tmpErrors' 無效」
匯出 驗證 SqlPackage 參數 ExcludeObjectType(s) 和 DoNotDropObjectType(s)
匯出 修正當資料庫中有異動資料擷取 (CDC) 物件時匯出失敗的問題,透過排除這些物件來解決。
擷取 新增重試功能,以在第一次因競爭條件導致擷取驗證失敗時進行重新嘗試。
匯入 修正當匯入至 Azure 時偶爾發生死結的問題,做法是將 MAXDOP 設定為 1
匯入 修正當時態表依賴具有結構定義綁定的安全性原則時匯入失敗的問題
平台 DacFramework.msi 現在由 "Microsoft SQL Server Data-Tier Application Framework" 簽署,而不是 "SQL Server 2012"
平台 在 x64 SqlPackage 中預設使用大型陣列,以修正一些涉及大型資料庫的情況。
架構比對 修正導致相同資料庫的結構比對失敗的資料庫範圍設定問題
架構比對 固化架構與資料行儲存索引比較
SQL 專案 已修復 "GRANT EXECUTE ANY EXTERNAL SCRIPT" 的建置錯誤。
SQL 專案 修正了一個錯誤:帶有列存索引和 nvarchar(max) 資料行的資料庫專案可以成功建置,但在部署時失敗。
SQL 專案 修正預存程序中資料表分布欄位無法解決的參考警告

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器) N/A
部署 尚不支援 Azure SQL 總帳資料表功能 N/A

18.7.1 SqlPackage

發行日期:2021 年 6 月 2 日

組建:15.0.5164.1

功能

功能 詳細資料
稽核 新增 EXTERNAL_MONITOR 的支援。
Azure Synapse Analytics 新增 PREDICT 的支援。
記錄 將 SqlPackage 版本和架構資訊新增至診斷記錄檔。

修正

功能 詳細資料
匯出 修正問題:在沒有叢集索引的情況下,匯出第一個資料行中有文字或影像的資料表會失敗。
匯出 已修正一個問題:在沒有叢集索引的情況下,如果統計資料中的資料行順序與資料表建立指令碼的順序不同,匯出該資料表會失敗。

18.7 SqlPackage

發行日期:2021 年 3 月 10 日

組建:15.0.5084.2

功能

功能 詳細資料
部署 從 Azure 儲存體擷取巨量資料/將巨量資料發佈至 Azure 儲存體。 如需詳細資訊,請參閱適用於巨量資料的 SqlPackage
Azure Synapse Analytics 資料列層級安全性支援 (內嵌資料表值函數、安全性原則、安全性述詞)
Azure Synapse Analytics 工作負載分類支援
Azure SQL Edge 外部串流作業支援
Azure SQL Edge 為資料保留新增資料表和資料庫選項。
匯入 為匯入作業新增 2 個新的索引選項屬性。 DisableIndexesForDataPhase (將資料匯入 SQL Server 之前停用索引,預設為 true),以及 RebuildIndexesOfflineForDataPhase (將資料匯入 SQL Server 之後離線重建索引,預設為 false)
記錄 為所有作業新增屬性 (HashObjectNamesInLogs),以將所有物件名稱轉變為記錄訊息中的雜湊字串。
效能 匯入和匯出效能的改進,包括額外的日誌記錄,以協助識別其他瓶頸。
SQLCMD 為部署和架構比較新增屬性 (DoNotEvaluateSqlCmdVariables),以指定是否將 SQLCMD 變數替換為值。

修正

功能 詳細資料
部署 Azure SQL 的預設 MAXDOP 已從 0 變更為 8,更新 DacFx 中的結構描述模型預設值
架構比對 使用 OUT 和 OUTPUT 關鍵字的預存程序在比較中將不視為差異
部署 巨量資料令牌的額外驗證
建置/部署 完整清理暫時性外部資料表的模式結構,以確保最終的 DACPAC 一致性。
建置/部署 新增錯誤處理並修正與非 Edge 150 RE 相關的問題。
匯入/部署 部署期間還原的序列值
部署 修正問題:在叢集索引上變更壓縮選項會導致重新建立資料表,而不是改變索引。
部署 已修正一個問題,即當資料表的資料行變更時,叢集資料行存放區索引會被卸除並重新建立的情況。
部署 修正外部使用者在部署期間遭到卸除並重新建立的問題。
架構比對 修正外部串流作業的架構比較問題。
匯入 啟用環境參數設定 ReliableDdlEnabled 並執行部署報告腳本時,引發了 Null 參考異常。
部署 修正問題:包含系統版本設定的部署步驟會以不正確的順序建立。
部署 修正了一個問題:因目標包含時態表,導致架構比較更新或 dacpac 部署失敗。
部署 部署後根據目標的先前最後一個值重設識別碼。

已知問題

功能 詳細資料 因應措施
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器) N/A
部署 在累加式部署案例中,當使用者卸除時態表及其相依物件 (例如函數、預存程序等) 時,部署可能會失敗。 指令碼生成順序會嘗試關閉資料表的 SYSTEM_VERSIONING,這是刪除資料表的前提條件,但生成的步驟順序不正確。 工作項目 產生部署指令碼,將 System_Versioning OFF 步驟移至卸除資料表之前,然後執行指令碼。

18.6 SqlPackage

發行日期:2020 年 9 月 18 日

建置:15.0.4897.1

功能

功能 詳細資料
平台 將 SqlPackage 的 .NET Core 版本更新為 .NET Core 3.1
始終加密 已新增對 SQL Server 2019 的安全區域匯入和匯出支援
部署 已新增支援在從 Azure SQL Database 匯出時忽略已啟用變更資料擷取的資料表
部署 已在 Azure SQL Database 中新增索引選項 OPTIMIZE_FOR_SEQUENTIAL_KEY 的支援
部署 Azure Synapse Analytics 已新增對識別欄位的支援
幫助 在 help (/?) 中輸出 SqlPackage 版本,並支援 /version 參數

修正

功能 詳細資料
部署 已修正以非系統管理員 (non-sysadmin) 使用者身分將 Azure SQL 受控執行個體作為目標時,所產生的錯誤部署指令碼
部署 已修正於執行腳本操作時載入部署貢獻者的問題
幫助 當作業所需時間超過 1 天時,在 SqlPackage 中輸出正確的經過時間
部署 已修正 .NET Core 部署時的 dacpac 註冊問題
部署 修復 .NET Core 上 SqlPackage 處理 /accessToken (/at) 參數的問題
部署 允許預存程序中的 ALTER TABLE 陳述式作為非最上層陳述式
部署 已修正 Azure Synapse Analytics 實體化檢視的驗證,使其不區分大小寫

已知問題

功能 詳細資料
部署 尚不支援 Azure Synapse Analytics 工作負載管理功能 (工作負載群組和工作負載分類器)

18.5.1 SqlPackage

發行日期:2020 年 6 月 24 日

組建:15.0.4826.1

修正

功能 詳細資料
部署 修正 18.5 版本中引入的迴歸問題,該問題會在具有外部登入的使用者在內部環境中部署 dacpac 或匯入 bacpac 時,導致出現「'type' 附近語法不正確」的錯誤。

18.5 SqlPackage

發行日期:2020 年 4 月 28 日

版本:15.0.4769.1

功能

功能 詳細資料
部署 SQL Server 2008 及更新版本、Azure SQL Database 和 Azure Synapse Analytics 現已支援資料敏感度分類
部署 新增對 Azure Synapse Analytics 的表格約束支援
部署 新增 Azure Synapse Analytics 的已排序叢集資料行存放區索引支援
部署 新增外部資料來源 (Oracle、Teradata、MongoDB/CosmosDB、ODBC、巨量資料叢集) 的支援,以及 SQL Server 2019 巨量資料叢集的外部資料表支援
部署 新增 SQL Database Edge 執行個體作為支援版本
部署 支援格式為 '<伺服器>.<DNS 區域>.database.windows.net' 的 Azure SQL 受控執行個體伺服器名稱
部署 在 Azure Synapse Analytics 中新增複製命令支援
部署 新增發佈期間的部署選項 'IgnoreTablePartitionOptions',以避免因 Azure Synapse Analytics 資料表中的資料分割函數變更而重新建立資料表。
.NET Core 在 .NET Core 版本的 SqlPackage 中新增 Microsoft.Data.SqlClient 的支援

修正

修正 詳細資料
部署 修正將 JSON 路徑解析為表達式
部署 修正產生 AlterAnyDatabaseScopedConfiguration 和 AlterAnySensitivityClassification 權限的 GRANT 陳述式
部署 修正無法辨識的外部指令碼權限
部署 修正內嵌屬性 - 屬性的隱含新增不應顯示差異,但明確提及應透過指令碼顯示
部署 解決了一個問題:變更具體化檢視 (MV) 所參考的資料表時,系統產生了 Alter View 陳述式。 Azure Synapse Analytics 的 MV 不支援 Alter View 陳述式。
部署 修正當將資料行新增至包含 Azure Synapse Analytics 資料的資料表時,發佈過程失敗的問題。
部署 修正更新腳本,以便在變更 Azure Synapse Analytics 的分佈資料行類型(資料遺失情境)時,將資料移至新的資料表。
ScriptDom 修正 ScriptDom Bug,此 Bug 導致其無法辨識在內嵌索引後面定義的內嵌條件約束
ScriptDom 修正 ScriptDom SYSTEM_TIME 在批次陳述式中遺漏右括弧
始終加密 修正 SqlPackage 重新連線時,由於連線中止後暫存資料表會消失,導致無法卸除 #tmpErrors 資料表的問題。

已知問題

功能 詳細資料
部署 在 18.5 版本中引入了一個迴歸問題,導致當使用具有外部登入的使用者在本地端部署 dacpac 或匯入 bacpac 時,會出現「'type' 附近的語法不正確」的錯誤。 因應措施是使用 SqlPackage 18.4,這將在下一版 SqlPackage 中修正。
.NET Core 因為 Microsoft.Data.SqlClient 的此一已知問題,匯入包含敏感度分類的 bacpacs 時,會因「內部連接發生嚴重錯誤」而失敗。 這將在下一版 SqlPackage 中修正。

18.4.1 SqlPackage

發行日期:2019 年 12 月 13 日

組建:15.0.4630.1

修補

修正 詳細資料
ScriptDom 在 18.3.1 中引入了 ScriptDom 剖析回歸問題,錯誤地將 'RENAME' 認定為最上層標記,導致剖析失敗。

已知問題

功能 詳細資料
部署 18.4.1 中引入了一個回歸問題,導致在使用具有外部登入的使用者部署 dacpac 或匯入 bacpac 時,會出現「物件參考未設定為物件的實例」的錯誤。 因應措施是使用 SqlPackage 18.4,這將在下一版 SqlPackage 中修正。

18.4 SqlPackage

發行日期:2019 年 10 月 29 日

組建:15.0.4573.2

功能

功能 詳細資料
部署 新增部署至 Azure Synapse Analytics 的支援。
平台 適用於 macOS、Linux 和 Windows 的 SqlPackage .NET Core 正式推出。
安全性 移除 SHA1 程式碼簽署。
部署 新增支援全新的 Azure 資料庫版本:GeneralPurpose、BusinessCritical、Hyperscale
部署 新增對 Azure Active Directory 使用者和群組的 Azure SQL 受控執行個體支援。
部署 支援 .NET Core 上 SqlPackage 的 /AccessToken 參數。

已知問題

功能 詳細資料
ScriptDom 18.3.1 中引入的 ScriptDom 剖析回歸問題,誤將 'RENAME' 視為頂層標記,導致剖析失敗。 這將在下一版 SqlPackage 中修正。

.NET Core 的已知問題

功能 詳細資料
匯入 針對壓縮檔大小超過 4 GB 的 .bacpac 檔案,您可能需要使用 .NET Core 版本的 SqlPackage 來執行匯入。 因為 .NET Core 會產生 ZIP 標頭,這些標頭雖然有效,但 .NET Full Framework 版本的 SqlPackage 無法讀取。
部署 不支援 /p:Storage=File 參數。 .NET Core 只支援記憶體。
始終加密 SqlPackage .NET Core 不支援 Always Encrypted 資料行。
安全性 SqlPackage .NET Core 不支援多重要素驗證的 /ua 參數。
部署 不支援使用 JSON 資料序列化的舊版 V2 dacpac 與 bacpac 檔案。

18.3.1 SqlPackage

發行日期:2019 年 9 月 13 日

版本:15.0.4538.1

功能

功能 詳細資料
部署 新增部署至 Azure Synapse Analytics 的支援 (預覽)。
部署 將 /p:DatabaseLockTimeout=(INT32 '60') 參數新增至 SqlPackage。
部署 將 /p:LongRunningCommandTimeout=(INT32) 參數新增至 SqlPackage。
匯出/解壓縮 將 /p:TempDirectoryForTableData=(STRING) 參數新增至 SqlPackage。
部署 允許從其他位置載入部署參與者。 系統會從部署目標 .dacpac 的相同目錄 (相對於 SqlPackage 二進位檔的 Extensions 目錄) 載入部署參與者,並將 /p:AdditionalDeploymentContributorPaths=(STRING) 參數新增至可指定其他目錄位置的 SqlPackage。
部署 新增支援 OPTIMIZE_FOR_SEQUENTIAL_KEY。

修正

修正 詳細資料
部署 修正以忽略自動生成的索引,確保它們在部署時不會被刪除。
始終加密 修正以處理始終加密的 varchar 資料欄。
建置/部署 修正以解決 XML 欄位集的 nodes() 方法。
ScriptDom 修正其他情況,其中會誤將 'URL' 字串解讀為頂層標記。
圖形 修正限制條件中虛擬資料行參考所產生的 SQL。
匯出 產生符合複雜性需求的隨機密碼。
部署 修正以在擷取限制時尊重指令逾時。
.NET Core (預覽) 修正檔案的診斷記錄。
.NET Core (預覽) 使用串流來匯出資料表資料,以支援大型資料表。

18.2 SqlPackage

發行日期:2019 年 4 月 15 日

組建:15.0.4384.2

功能

功能 詳細資料
圖形 針對邊緣條件約束與邊緣條件約束子句新增圖形資料表支援。
部署 已啟用模型驗證規則,以支援 SQL Server 2016 及以上版本的 32 個索引鍵資料行。

修正

修正 詳細資料
部署 修正因使用不支援的查詢提示而對 SQL Server 2016 RTM 資料庫進行回溯編譯的問題。
部署 修正在建立檔案群組陳述式前發生之自動關閉 alter 陳述式的部署順序。
ScriptDom 修正 ScriptDom 剖析錯誤,將 'URL' 字串誤解為最上層標記的問題。
部署 修正解析「修改表格新增索引」語句時的 null 參考異常。
架構比對 針對可為 Null 且已儲存的計算資料行,修正架構比較結果總是顯示不同的問題。

18.1 SqlPackage

發行日期:2019 年 2 月 1 日

組建:15.0.4316.1

預覽版本。

功能

功能 詳細資料
部署 增加了對 UTF8 排序規則的支援。
部署 已在索引檢視表上啟用非叢集資料行存放區索引。
平台 移到 .NET Core 2.2。
架構比對 在 .NET Core 上使用以記憶體為後盾的儲存體進行架構比較。

修正

修正 詳細資料
效能 使用舊版基數估算器進行反向工程查詢的效能調整。
效能 已修正生成腳本時發生的架構比較效能重大問題。
架構比對 已修正架構漂移偵測邏輯,以忽略某些擴充事件會話。
圖形 已修正圖形資料表的匯入順序。
匯出 修正了具物件權限的外部資料表的匯出功能。

已知問題

此發行版包含用於 .NET Core 2.2 的跨平台 SqlPackage 預覽組建。 SqlPackage 可以在 macOS 和 Linux 上執行。

已知問題 詳細資料
部署 針對 .NET Core,不支援建置及部署參與者。
部署 針對 .NET Core,不支援使用 JSON 資料序列化的舊版 dacpac 與 bacpac 檔案。
部署 針對 .NET Core,由於區分大小寫的檔案系統問題,參考的 dacpacs (例如 master.dacpac) 可能無法解析。 因應措施是將參考檔案的名稱改為大寫 (例如 MASTER.BACPAC)。

18.0 SqlPackage

發行日期:2018 年 10 月 24 日

組建:15.0.4200.1

功能

功能 詳細資料
部署 已新增資料庫相容性層級 150 的支援。
部署 已新增 Azure SQL 受控執行個體的支援。
效能 已新增 MaxParallelism 命令列參數,可指定資料庫作業的平行處理原則程度。
安全性 已新增 AccessToken 命令列參數,可指定連線至 SQL Server 時的驗證權杖。
匯入 已新增支援串流處理 BLOB/CLOB 資料類型以用於匯入。
部署 已新增純量 UDF 'INLINE' 選項的支援。
圖形 已新增對圖形資料表 'MERGE' 語法的支持。

修正

修正 詳細資料
圖形 已經修正圖形資料表中無法解析的虛擬欄位。
部署 已修正使用記憶體最佳化的資料表時透過記憶體最佳化檔案群組建立資料庫的問題。
部署 已修正外部資料表中包含擴充屬性的問題。

17.8 SqlPackage

發行日期:2018 年 6 月 22 日

組建:14.0.4079.2

功能

功能 詳細資料
診斷 已改進連線失敗的錯誤訊息,包括 SqlClient 例外狀況訊息。
部署 在單一分割區索引上支援索引壓縮以用於匯入/匯出。

修正

修正 詳細資料
部署 已修正使用 SQL 2017 和更新版本的 XML 資料行集的反向工程問題。
部署 已修正於 Azure SQL Database 中對資料庫相容性層級 140 進行指令碼處理時遭忽略的問題。

17.4.1 SqlPackage

發行日期:2018 年 1 月 25 日

組建:14.0.3917.1

功能

功能 詳細資料
匯入/匯出 已新增 ThreadMaxStackSize 命令列參數,可使用大量巢狀陳述式來剖析 Transact-SQL。
部署 資料庫目錄定序支援。

修正

修正 詳細資料
匯入 將 Azure SQL Database bacpac 匯入至內部部署執行個體時,已修正因為「此版本的 SQL Server 不支援沒有密碼的資料庫主要金鑰」而引發的錯誤。
圖形 已針對圖形資料表修正未解決的虛擬欄位錯誤。
架構比對 已修正 SQL 驗證,以進行結構比較。

17.4.0 SqlPackage

發行日期:2017 年 12 月 12 日

組建:14.0.3881.1

功能

功能 詳細資料
部署 已在 SQL 2017+ 和 Azure SQL Database 上新增「時態性保留原則」 的支援。
診斷 已新增 /DiagnosticsFile:"C:\Temp\SqlPackage.log" 命令列參數,可指定要儲存診斷資訊的檔案路徑。
診斷 已新增 /Diagnostics 命令列參數,可將診斷資訊記錄至主控台。

修正

修正 詳細資料
部署 在遇到不了解的資料庫相容性層級時不要封鎖。 相反地,將假設為最新的 Azure SQL 資料庫或內部部署平台。