SSMA for Db2 中的新增功能(Db2ToSQL)

本文列出了每个版本中的 SQL Server Migration Assistant (SSMA) for Db2 更改。

说明

虽然 Microsoft Entra ID 是 Azure Active Directory (Azure AD) 的新名称,但为了防止中断现有环境,Azure AD 仍保留在一些硬编码的元素中,例如 UI 字段、连接提供程序、错误代码和 cmdlet。 在本文中,这两个名称可以互换。

SSMA v10.1

SSMA for Db2 的 v10.1 版本包含以下更改:

  • 从 Db2 z/OS 到 SQL Server 2019 的标识列转换增强
  • 改进了 Db2 存储过程 WITH RETURN 子句到 Azure SQL 数据库的转换
  • 改进 Db2 的数据库对象加载
  • 针对 Db2 中的标识符 REPLACE(STRING, CHAR,CHAR) 的适当错误处理

SSMA v10.0

SSMA for Db2 的 v10.0 版本包含以下更改:

  • 改进了 FETCH FIRST ROW ONLY 语法的转换
  • 改进了对 LOCATE_IN_STRING 行为的转换支持
  • 支持 z/OS 的 Db2 中的范围分区表
  • 改进了索引中 INCLUDE 子句的处理

SSMA v9.5

SSMA for Db2 的 v9.5 版本包含以下更改:

  • 支持使用 Azure 数据工厂进行大型数据迁移
  • 修复以改进代码转换

SSMA v9.4.1

SSMA for Db2 的 v9.4.1 版本

  • 对 I 系列 Db2 实例中的“表加载”进行 bug 修复

SSMA v9.4

SSMA for Db2 的 v9.4 版本包含以下更改:

  • 修复了多个 DELETE 语句的转换问题。
  • 改进了处理程序的转换
  • 改进了 Fetch 子句的转换

SSMA v9.3

SSMA for Db2 的 v9.3 版本包含以下更改:

  • 支持系统版本表
  • 支持 SQL Server 2022 目标

SSMA v9.2

SSMA for Db2 的 v9.2 版本包含轻微的性能改进、bug 修复和增强的获取帮助体验。

SSMA v9.1

SSMA for Db2 的 v9.1 版本包含轻微的性能改进、bug 修复和增强的获取帮助体验。

SSMA v9.0

SSMA for Db2 的 v9.0 版本包含轻微的性能改进、bug 修复和联机帮助查看器支持。

  • 添加了对 Db2 LUW 的 LISTAGG() 的支持

SSMA v8.24

SSMA for Db2 的 v8.24 版本包含以下更改:

  • 在子查询中添加了对 ORDER BY 子句的支持
  • 添加了对 ROW_NUMBER 函数的支持
  • 改进了 UNION/UNION ALL 语句的转换
  • 改进了“Save As”语句的命名

SSMA v8.23

SSMA for Db2 的 v8.23 版本包含以下更改:

  • 改进了 TOTALORDER 函数
  • 支持 ANCHORED 数据类型的转换
  • 新的“允许来自文件的语句”选项,用于从文件系统中添加语句
  • 增强了在控制台模式下运行时的 XML 输出
  • 报告中新增了用于发送反馈的“反馈”链接
  • 在报告中,增强了可视化体验

SSMA v8.22

SSMA for Db2 的 v8.22 版本包含以下更改:

  • 修复ssma_db2.TIMESTAMP_FORMAT仿真函数中的AM/PM处理问题
  • 改进了仿真函数 ssma_db2.TIMESTAMP_FORMAT 中的星期验证
  • 允许为目标数据库连接指定额外的连接字符串选项
  • 介绍了评估报告中的摘要图表
  • 改进了评估报告中的消息导航

SSMA v8.21

SSMA for Db2 的 v8.21 版本包含以下更改:

  • 在 Db2 for i 的触发器定义中加载旧/新行/表的别名
  • 为具有两个和三个参数的 LCASEUCASELOWERUPPER 函数添加了转换
  • 为具有两个参数的 LTRIMRTRIM 函数添加了转换
  • 改进了 LOCATEPOSITION 函数的转换
  • 修复了仿真函数 ssma_db2.CHAR 的返回类型
  • 修复了仿真函数 ssma_db2.DECIMAL 的参数
  • 在目标数据库的行计数查询中使用 COUNT_BIG

SSMA v8.20

SSMA for Db2 的 v8.20 版本包含以下更改:

  • 改进了 VARCHAR_FORMAT 仿真函数
  • 修复了 Db2 for i 的表发现问题

SSMA v8.19

SSMA for Db2 的 v8.19 版本包含以下更改:

  • 改进了 TIMESTAMP_FORMAT 仿真函数
  • 改进了 z/OS 平台的外键发现

SSMA v8.18

SSMA for Db2 的 v8.18 版本包含以下更改:

  • 添加了对标识列的支持

SSMA v8.17

SSMA for Db2 的 v8.17 版本包含以下更改:

  • 改进了 TRANSLATE 函数的转换
  • 修复了具有计算列的表的数据迁移问题
  • 更新 HTML 评估报告以使用新式编辑器显示 SQL 文本

SSMA v8.16

SSMA for Db2 的 v8.16 版本包含以下更改:

  • 修复了包含特殊字符的列别名的转换问题
  • 修复了 SELECTIVITY 子句的转换问题
  • 改进了 WITH ROW MOVEMENT 子句的转换
  • 删除对旧版分析程序的支持
  • 修复了对象不从数据库刷新的问题

SSMA v8.15

除了多项辅助功能改进之外,SSMA for Db2 的 v8.15 版本还包含以下更改:

  • 修复了具有日期/时间参数的 MIN/MAX 聚合函数的转换
  • 修复了使用 DD 占位符时 VARCHAR_FORMAT 仿真函数中的 bug
  • 改进了数据类型 TIME 的类型映射
  • 改进了具有数值参数的 ROUNDTRUNC 函数的转换
  • 将评估报告重新设计以适应现代浏览器的使用
  • 使用由数据库提供的权限进行 Microsoft Entra/Azure AD 的身份验证
  • 改进了从文件加载的语句的命名

SSMA v8.14

除了多项改进,以确保残障人士的可访问性更高,SSMA for Db2 的 v8.14 版本还需要项目升级,因为它现在将完整的源/目标服务器版本存储在项目元数据中。

SSMA v8.13

SSMA for Db2 的 v8.13 版本包含以下更改:

  • 支持筛选的唯一索引
  • 转换过程和函数调用时,请考虑隐式类型强制转换
  • 改进源连接字符串的日志记录,帮助排查连接问题

SSMA v8.12

SSMA for Db2 的 v8.12 版本包含以下更改:

  • STRIP 函数的转换
  • 改进了过程选项分析

SSMA v8.11

SSMA for Db2 的 v8.11 版本包含以下更改:

  • 支持 Db2 for i (v7.1 及更高版本)
  • SQLSTATESQLCODE 的翻译
  • 函数中副作用运算符的转换错误提示
  • 使用 MSAL.NET 库进行交互式 Microsoft Entra/Azure AD 身份验证

SSMA v8.10

SSMA for Db2 的 v8.10 版本解决了外键发现中的回归问题,并包含小幅的性能改进。

SSMA v8.9

SSMA for Db2 的 v8.9 版本包含以下更改:

  • 修复了 TIMESTAMPDIFF 函数的转换问题
  • 修复了存在分区索引时的索引发现问题
  • 修复了在另一个架构中定义主索引时的外键发现问题
  • 对匹配内置函数名称的列进行了转换改进
  • 修复了项目名称中有特殊字符的问题

SSMA v8.8

SSMA for Db2 的 v8.8 版本包括:

  • SQL Server 对象同步稳定性改进
  • 评估和转换过程中的 GUI 性能改进
  • 更新了从 ROWIDvarbinary(40) 的映射,以方便数据迁移
  • 改进了 SELECT ... FROM NEW/OLD TABLE 语句的转换
  • 添加了对用于过程和函数的 ALTER 语句的转换
  • 添加了对解构赋值的转换

SSMA v8.7

SSMA for Db2 的 v8.7 版本包括全新的 Db2 语法分析器,以及图形用户界面中的次要修复和性能改进。

此外,SSMA for Db2 现在提供:

  • 修复了从 LUW 上的 Db2 迁移时发现外键的问题。
  • 改进了 SELECT ... FOR UPDATE 语句的转换。
  • 改进了 MQ 表中函数 COUNT 的转换。
  • 语句的 SAVEPOINT 转换。
  • 转换后模拟 ORDER BY 子句中 NULL 值的 Db2 行为。
  • 分析对 ASSOCIATE RESULT SET 语句的支持。

重要

使用 SSMA v8.5 及更高版本时,.NET 4.7.2 是安装先决条件。 如果需要安装此版本,可以从此处下载运行时文件。

SSMA v8.6

除了专门设计用于提高可用性和性能的一系列修复外,SSMA for Db2 的 v8.6 版本已通过增加一个设置得到增强,该设置允许在转换的代码中省略 SSMA 扩展属性。

若要使用此设置,请在 SSMA for Db2 中导航到“工具>常规>转换”,然后在“Misc”下,将省略扩展属性设置的值更新为“是”。

“省略扩展属性”设置的屏幕截图。

此外,SSMA for Db2 现在提供:

  • 修复了将使用默认参数值的函数进行转换的问题。
  • 改进了对函数 PARAMETER 子句的分析。
  • 转换 LEAVE 语句的功能。

重要

使用 SSMA v8.5 及更高版本时,.NET 4.7.2 是安装先决条件。 如果需要安装此版本,可以从此处下载运行时文件。

SSMA v8.5

SSMA for Db2 的 v8.5 版本得到了增强,支持 Microsoft Entra/Azure AD 身份验证和对 SQL Server 中的 JSON 功能的基本支持,以及旨在提高可用性和性能的目标修补程序集。

此外,SSMA for Db2 已通过以下方式得到了增强:

  • 支持为 GET DIAGNOSTICS 语句添加 ROW_NUMBER 转换。
  • 修复了对象名称开头空格未被正确识别的错误。

重要

使用 SSMA v8.5 时,.NET 4.7.2 是安装先决条件。 如果需要安装此版本,可以从此处下载运行时文件。

SSMA v8.4

SSMA for Db2 的 v8.4 版本通过定向修复得到了增强,可解决辅助功能问题,并修复与 SQL Server 2016 及更高版本相关的最大索引列(允许 32 而不是 16)问题的 bug。

重要

使用 SSMA 版本 7.4 到 8.4 时,.NET 4.5.2 是安装先决条件。

SSMA v8.3

SSMA for Db2 的 v8.3 版本通过旨在改进质量和转换指标的目标修补程序进行增强。 此外,此版本的 SSMA for Db2 提供了以下修复:

  • 解决了辅助功能问题。
  • 添加了对 SQL Server 中 hierarchyid 类型的基本支持。
  • 将 z/OS 发现查询中的 TRIM 函数用法替换为 RTRIM/LTRIM
  • 允许用户在“标准模式”中连接时指定包集合(默认值为 NULLID)。
  • CREATE TABLE AS SELECT 添加转换。
  • 改进了全局临时表的转换。
  • 解决了对象唯一性检查顺序中的问题,以使表在名称冲突时优先于约束。
  • 解决了在 z/OS 上为 DATETIMESTAMP 加载默认列值的问题。
  • 支持 Unicode 换行符(也称为 NEL)。
  • 解决了光标转换中缺少 RETURN TO 子句的问题。
  • 添加了对标签和 GOTO 的支持。

SSMA v8.2

SSMA for Db2 的 v8.2 版本进行了增强,以解决从 SSMA 控制台工具连接到 Azure SQL 数据库时出现的问题,以及转换期间视图声明中缺少 COUNT_BIG 列的问题。 此外,此版本还包括一组有针对性的修补程序,旨在提高质量和转换指标,并修复以下项:

  • 数据迁移后禁用非聚集索引的问题。
  • 在无提示安装过程中检测 .NET Framework。
  • 下载新版本时发生的间歇性崩溃。

备注

自动更新的已知问题可能会导致从 SSMA v8.1 更新到 v8.2 的失败。 如果遇到此错误,请下载新版本并手动安装。

SSMA v8.1

SSMA for Db2 v8.1 版本经过增强,提供旨在提高质量和转换指标的针对性修补程序。

说明

自动更新的已知问题可能会导致从 SSMA v8.0 更新到 v8.1 的失败。 如果遇到此错误,请下载新版本并手动安装。

SSMA v8.0

SSMA for Db2 的 v8.0 版本已得到增强,可提供旨在提高质量和转换指标的目标修补程序。 此版本还增加了以下功能:

  • 支持将 Azure SQL 托管实例作为目标。 现在你可以创建面向 Azure SQL 托管实例的新项目:

SQL MI 项目的屏幕截图。

  • 转换后修复顾问。 你可在此处了解相关详细信息。

  • 初步数据库/架构选择。

    连接到源时,现在可以选择感兴趣的数据库/架构。 仅选择计划迁移的架构,可在初始连接期间节省时间,并提高总体 SSMA 性能。

SSMA 筛选器对象的屏幕截图。

SSMA v7.10

SSMA for Db2 的 v7.10 版本包含以下更改:

  • 针对性修复,旨在提供更多安全和隐私保护,以满足全球要求的变化。
  • 修复 BEGIN-END 块的转换问题。

SSMA v7.9

SSMA for Db2 的 v7.9 版本包含以下更改:

  • 可提高质量和转换指标的针对性修复。
  • 支持在 SSMA 命令行中更改数据类型映射和项目首选项。
  • 支持使用 SQL Server Integration Services (SSIS) 来迁移数据。 转换架构后,可以使用右键单击上下文菜单选项来创建 SSIS 包。
  • SSMA 中的 Azure SQL 数据库连接对话框也已更改,以指定完全限定的服务器名称。 在早期版本的 SSMA 中,必须在项目设置中显式提及 Azure SQL 数据库前缀。

SSMA v7.8

SSMA for Db2 的 v7.8 版本包含以下更改:

  • 更改项目设置中突出显示的类型映射。
  • 用户能够禁用遥测。

SSMA v7.7

SSMA for Db2 的 v7.7 版本包含以下更改:

  • 可提高质量和转换率的针对性解决方案。
  • 根据流行的需求,32 位版本的 SSMA for Db2 已返回。 与以前(v7.4 之前)的实现相比,它有两个安装程序包,但它们不能并排安装。 因此,必须根据你拥有的连接组件,选择最合适的版本。 最好尽可能使用 64 位版本。

SSMA v7.6

SSMA for Db2 的 v7.6 版本通过有针对性的修补程序进行了增强,可改进质量和转换指标,并支持 SQL Server 2017(公共预览版)。 对 Windows 和 Linux 上的 SQL Server 2017 的支持尚为公共预览版,不应用于生产迁移。

SSMA v7.5

SSMA for Db2 的 v7.5 版本得到了增强,并进行了多项改进,以确保残疾人的可访问性更高。

SSMA v7.4

SSMA for Db2 的 v7.4 版本包含以下更改:

  • 查询超时”选项现在可在源和目标上的架构对象发现期间使用。

查询超时选项的屏幕截图。

  • 根据客户反馈,通过目标修补程序,改进了质量和转换指标。

    重要

    .NET 4.5.2 是安装 SSMA v7.4 的先决条件。 此外,从 v7.4 开始,SSMA 的 32 位版本已经停止使用。

SSMA v7.3

SSMA for Db2 的 v7.3 版本包含以下更改:

  • 通过基于客户反馈的针对性修补程序改进了质量和转换指标。
  • 由以下项目提供的 SSMA 扩展性框架:
    • 将功能导出到 SQL Server Data Tools (SSDT) 项目。

      • 现在可以将架构脚本从 SSMA 导出到 SSDT 项目。 可以使用架构脚本进行其他架构更改并部署数据库。

        “另存为 SSDT 项目”命令的屏幕截图。

    • 可以供 SSMA 使用以执行自定义转换的库。

SSMA v7.2

SSMA for Db2 的 v7.2 版本包含以下更改:

  • 通过基于客户反馈的针对性修补程序改进了质量和转换指标。
  • 对遥测功能的增强,以便提供更优质的数据点来排查客户问题,并提升 SSMA 的转换率。

SSMA v7.1

SSMA for Db2 的 v7.1 版本包含以下更改:

  • Windows 和 Linux CTP1 上的 SQL Server 2017 现在是支持用于迁移的目标平台。 此功能以技术预览版提供,允许将架构和数据移动到目标 SQL Server 实例。

  • 支持自动更新,以便在最新版本的 SSMA 可用后立即下载。

  • SSMA 可安装二进制文件现在通过 Windows Installer 包文件 (.msi) 传递。

2016 年 5 月

SSMA for Db2 的 2016 年 5 月版本包含以下更改:

  • 添加了对 SQL Server 2016 的支持。
  • 添加了 Db2 内存中表和常规表到 SQL Server 内存中功能和 hekaton 功能的转换。
  • 添加了 Db2 访问控制到 SQL Server 策略对象的转换(Db2 行级别安全性)。
  • 添加了将 Db2 系统版本控制的表转换为 SQL Server 临时表的功能。
  • 改进了 Db2 分析器和解析程序。
  • 取消了 .NET 2.0 的安装程序检查。
  • 从 Db2 安装程序中删除了不必要的 *.dll 文件。
  • 修复了 SSMA 控制台的 save-projectopen-project 命令。
  • 修复了 SSMA 控制台中的 securepassword 命令。
  • 修复了初始加载时对象数目的计数。
  • 修复了全局设置中的 bug。

2016 年 3 月

SSMA for Db2 的 2016 年 3 月预览版增加了对迁移到 SQL Server 2016 的支持。

2016 年 1 月

SSMA for Db2 的 2016 年 1 月维护版本包含以下更改:

  • 添加了对多个标准函数的支持。
  • 修复了 Db2 分析程序错误。
  • 修复了 Db2 v9 zOS 支持 (RFC 5690920)。
  • 修复了转换过程中 Db2 未解析的标识符错误。
  • 为 SSMA 增加了视图日志菜单项 (RFC 5706203)。
  • 添加了遥测。

2014 年 11 月

SSMA for Db2 的 2014 年 11 月版本是初始版本。