使用生成式人工智能转换数据库对象 - Amazon数据库迁移服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用生成式人工智能转换数据库对象

带有生成式人工智能功能的 DMS 架构转换通过提供建议来简化数据库迁移过程,可帮助您转换那些以往通常需要复杂手动操作才能转换的代码对象。此功能可用于 Oracle 到 Po PostgreSQL/Aurora stgreSQL、SQL Server 到 PostgreSQL 的转换。PostgreSQL/Aurora PostgreSQL and SAP ASE (Sybase ASE) to PostgreSQL/Aurora您可以转换整个数据库架构或单个数据库架构对象。

要使用生成式人工智能转换源数据库对象,请按照转换数据库对象中的步骤 1 到 6 进行操作,然后继续使用以下两种方法之一:

  • 方法 1:从操作菜单中选择转换。在出现的转换对话框中,启用使用生成式人工智能转换架构选项,然后单击转换

  • 方法 2:单击右上角的使用生成式人工智能转换架构。在转换对话框中,确保该选项已启用,然后单击转换

要随时在 DMS 架构转换控制台中手动调整此设置,请执行以下操作:

  • 导航到设置选项卡。

  • 转换设置部分,启用生成式人工智能选项以批准使用生成式人工智能。

注意

支持的区域:

  • 美国东部(弗吉尼亚州北部)

  • 美国西部(俄勒冈州)

  • 欧洲地区(法兰克福)

支持的转换路径:

  • Oracle 到 Amazon RDS for PostgreSQL

  • Oracle 到 Amazon Aurora PostgreSQL

  • Microsoft SQL Server 到 Amazon RDS for PostgreSQL

  • Microsoft SQL Server 到 Amazon Aurora PostgreSQL

  • SAP ASE(Sybase ASE)到 Amazon RDS for PostgreSQL

  • SAP ASE(Sybase ASE)到亚马逊 Aurora PostgreSQL

生成式人工智能转换的范围

生成式人工智能辅助架构转换侧重于具有指定操作项的特定 SQL 元素。所有其他 SQL 元素都使用基于规则的默认方法进行转换。生成式人工智能转换扩展范围内的 SQL 元素包括:

转换方向 行动项目 Message 语法元素
Oracle 到 Amazon RDS for PostgreSQL 以及 Oracle 到 Amazon Aurora PostgreSQL 5578 Amazon DMS架构转换无法转换 SELECT 语句 除限制之外的所有情况
30415 您的 MERGE 语句在 WHERE 子句中包含基于目标表列中的值的筛选条件 除限制之外的所有情况
5591 Amazon DMS架构转换无法转换系统对象 除限制之外的所有情况
5029 Amazon DMS架构转换无法转换数据类型不支持的对象的用法 在函数和过程参数中使用具有不受支持的 STANDARD.BFILE 数据类型的对象。
5031 Amazon DMS架构转换无法转换 CURSOR 表达式 除限制之外的所有情况
5043 Amazon DMS架构转换无法转换 SELECT 子句中带有星号的分层查询 除限制之外的所有情况
5073 PostgreSQL 不支持带有伪列的分层查询 除限制之外的所有情况
5102 PostgreSQL 不支持 MERGE 语句 除限制之外的所有情况
5585 Amazon DMS架构转换无法将外部联接转换为相关的子查询 除限制之外的所有情况
5608 Amazon DMS如果子查询在 SET 子句中返回多列,则架构转换无法转换 UPDATE 语句 除限制之外的所有情况
5619 Amazon DMS架构转换无法转换系统对象 除限制之外的所有情况
5852 PostgreSQL 在 MERGE 语句中仅支持将表作为目标。 除限制之外的所有情况
5853 Amazon DMS架构转换仅支持表、视图或子查询作为 MERGE 语句的 USING 子句中的源 除限制之外的所有情况
5855 您的 MERGE 语句在 WHERE 子句中包含基于目标表列中的值的筛选条件 除限制之外的所有情况
9996 出现内部转换器错误 除限制之外的所有情况
9993 由于引用了未解析的对象,无法转换语句 除限制之外的所有情况
5598 PostgreSQL 不支持 ROWID 除限制之外的所有情况
5340 Amazon DMS架构转换无法转换函数 除限制之外的所有情况
5071 PostgreSQL 不支持子查询使用 INSERT 语句 除限制之外的所有情况
5068 PostgreSQL 不支持子查询使用 DELETE 语句 除限制之外的所有情况
5065 PostgreSQL 不支持子查询使用 UPDATE 语句 除限制之外的所有情况
5586 Amazon DMS架构转换无法使用 NOCYCLE 子句转换查询 除限制之外的所有情况
5351 Amazon DMS架构转换无法转换对象 除限制之外的所有情况
5077 PostgreSQL 不支持 SELECT 语句使用 PIVOT 子句 除限制之外的所有情况
5126 PostgreSQL 不支持 MODEL 语句 除限制之外的所有情况
5121 PostgreSQL 不支持 FORALL 语句 除限制之外的所有情况
5141 Amazon DMS架构转换不支持这种类型的转换 除限制之外的所有情况
5142 Amazon DMS架构转换无法转换相同方法的嵌套调用 除限制之外的所有情况
5245 PostgreSQL 不支持包含嵌套表列的视图 除限制之外的所有情况
5500 Amazon DMS架构转换无法转换数据库邮件发送 除限制之外的所有情况
5501 Amazon DMS架构转换无法转换计划作业 除限制之外的所有情况
5645 PostgreSQL 不支持多个对象表目标的 BULK COLLECT INTO 子句。 除限制之外的所有情况
5665 PostgreSQL 不支持用 PRAGMA AUTONOMOUS_TRANSACTION 定义的集合数据类型 除限制之外的所有情况
5637 PostgreSQL 不支持批量收集到 VARRAY 的 VARRAY 除限制之外的所有情况
5594 Amazon DMS架构转换无法转换日期时间表达式 除限制之外的所有情况
5622 Amazon DMS架构转换会转换参数设置为 true 的 dbms_transaction.local_transaction_id 函数 除限制之外的所有情况
5643 PostgreSQL 不支持 SELECT 语句中针对多级集合类型的 BULK COLLECT INTO 子句。 除限制之外的所有情况
5649 PostgreSQL 不支持多级集合类型的多集运算符。 除限制之外的所有情况
5651 Amazon DMS架构转换无法转换流水线表函数 除限制之外的所有情况
5793 Amazon DMS架构转换使用 GRANT ALL 选项创建队列 除限制之外的所有情况
5794 PostgreSQL 默认将队列模式设置为启用 除限制之外的所有情况
5795 Amazon 简单队列服务不支持处于禁用模式的队列 除限制之外的所有情况
Microsoft SQL Server 到 Amazon RDS for PostgreSQL 和 Microsoft SQL Server 到 Amazon Aurora PostgreSQL 7610 Amazon DMS架构转换无法转换不支持的 DDL 语句 除限制之外的所有情况
7622 Amazon DMS架构转换无法使用复杂的内联函数转换 DELETE 语句 除限制之外的所有情况
7624 Amazon DMS对于没有主键的表,架构转换无法将 DELETE 语句转换为内联函数 除限制之外的所有情况
7626 Amazon DMS架构转换无法使用复杂的内联函数转换 UPDATE 语句 除限制之外的所有情况
7627 Amazon DMS架构转换无法转换此语法元素 除限制之外的所有情况
7628 PostgreSQL 不支持 GOTO 语句 除限制之外的所有情况
7637 PostgreSQL 不支持全局游标 除限制之外的所有情况
7639 PostgreSQL 不支持动态游标 除限制之外的所有情况
7644 PostgreSQL 不支持 %s 子句 除限制之外的所有情况
7645 PostgreSQL 不支持在链接服务器上运行直通命令 除限制之外的所有情况
7653 PostgreSQL 不支持 GROUP BY ROLLUP 子句 除限制之外的所有情况
7654 PostgreSQL 不支持 GROUP BY CUBE 子句 除限制之外的所有情况
7655 PostgreSQL 不支持 GROUP BY GROUPING SETS 子句 除限制之外的所有情况
7672 PostgreSQL 不支持运行字符串的 EXECUTE 语句 除限制之外的所有情况
7683 如果目标是视图、实体化视图或外部表,则不支持 MERGE 除限制之外的所有情况
7687 PostgreSQL 不支持 CONTAINS 谓词 除限制之外的所有情况
7688 PostgreSQL 不支持 FREETEXT 谓词 除限制之外的所有情况
7691 PostgreSQL 不支持 WAITFOR TIME 功能 除限制之外的所有情况
7695 PostgreSQL 不支持将过程作为变量调用 除限制之外的所有情况
7696 Amazon DMS架构转换无法转换对象,因为该%s对象尚未创建 除限制之外的所有情况
7708 Amazon DMS架构转换无法转换不支持%s的数据类型的用法 除限制之外的所有情况
7709 Amazon DMS架构转换无法转换对称密钥的用法 除限制之外的所有情况
7773 Amazon DMS架构转换无法转换带有日期的算术运算 除限制之外的所有情况
7774 Amazon DMS架构转换无法转换具有混合类型操作数的算术运算 除限制之外的所有情况
7794 PostgreSQL 不支持用户定义的数据类型 除限制之外的所有情况
7796 PostgreSQL 不支持 UPDATE 语句中的 TOP 子句 除限制之外的所有情况
7797 PostgreSQL 不支持 UPDATE 语句中 OUTPUT 子句的 DELETED 列前缀 除限制之外的所有情况
7798 PostgreSQL 不支持 DELETE 语句中的 TOP 子句 除限制之外的所有情况
7799 PostgreSQL 不支持 INSERT 运算符中的 TOP 子句 除限制之外的所有情况
7804 PostgreSQL 不支持按位异或运算符 除限制之外的所有情况
7805 PostgreSQL 不支持 !< 除限制之外的所有情况
7806 PostgreSQL 不支持 !>(不大于)运算符 除限制之外的所有情况
7811 PostgreSQL 不支持 %s 函数。 Amazon DMS架构转换会跳过转换后的代码中这个不支持的函数 除限制之外的所有情况,不包括 DDL
7816 对于 XML 数据类型,PostgreSQL 不支持任何方法 除限制之外的所有情况
7817 PostgreSQL 不支持 SQL 查询中的 FOR XML PATH 选项 除限制之外的所有情况
7818 PostgreSQL 不支持二进制数据类型的算术运算 除限制之外的所有情况
7819 PostgreSQL 不支持 INSERT...EXECUTE 语句 除限制之外的所有情况
7820 PostgreSQL 不支持 VALUE() 方法 除限制之外的所有情况
7824 MERGE 语句不支持递归 CTE 除限制之外的所有情况
7829 Amazon DMS架构转换无法使用 UPDATE 语句转换变量赋值 除限制之外的所有情况
7830 Amazon DMS架构转换无法使用 CASE 操作数转换算术运算 除限制之外的所有情况
7832 Amazon DMS架构转换无法在视图上转换 INSTEAD OF 触发器 除限制之外的所有情况
7833 Amazon DMS架构转换无法在当前上下文中转换@@rowcount函数 除限制之外的所有情况
7836 PostgreSQL 不支持对二进制数据执行写入操作 除限制之外的所有情况
7840 Amazon DMS架构转换无法转换数据库控制台命令语句 除限制之外的所有情况
7904 Amazon DMS架构转换无法转换 %s 系统对象 除限制之外的所有情况
7905 PostgreSQL 不支持 SELECT 语句的 PIVOT 子句 除限制之外的所有情况
7906 PostgreSQL 不支持 SELECT 语句的 UNPIVOT 子句 除限制之外的所有情况
7909 Amazon DMS架构转换无法转换 UPDATE(列)或 COLUMNS_UPDATED 语句 除限制之外的所有情况
7916 Amazon DMS架构转换无法使用 INSERT ON CONFLICT 语句模拟 MERGE 语句 除限制之外的所有情况
7917 PostgreSQL 不支持 %s 函数 除限制之外的所有情况
7918 PostgreSQL 不支持表值函数 除限制之外的所有情况
7919 PostgreSQL 不支持带有 %s 指令的 FOR XML 除限制之外的所有情况
7920 PostgreSQL 不支持将 FOR XML 与 EXPLICIT 模式结合使用 除限制之外的所有情况
7925 PostgreSQL 不支持 OPENXML 标志的百分比字符 除限制之外的所有情况
7927 PostgreSQL 不支持没有主键的自引用表的外部联接 除限制之外的所有情况
7929 Amazon DMS架构转换无法从 EXEC 语句转换 INSERT 语句 除限制之外的所有情况
7939 Amazon DMS架构转换无法转换 %s JSON 系统函数 除限制之外的所有情况
7940 Amazon DMS架构转换无法转换 OPENJSON 系统表值函数 除限制之外的所有情况
7941 Amazon DMS架构转换无法转换所有打开的数据集,因为您有多个打开的数据集 除限制之外的所有情况
9996 出现内部转换器错误 除限制之外的所有情况
SAP ASE(Sybase ASE)到 Amazon RDS for PostgreSQL 和 SAP ASE(Sybase ASE)到亚马逊 Aurora PostgreSQL 3014 无法转换函数 除限制之外的所有情况
3016 PostgreSQL 不支持 DML 运算符中的 TOP 选项 除限制之外的所有情况
3021 无法执行算术运算的自动迁移 除限制之外的所有情况
3023 PostgreSQL 不支持二进制数据类型的算术运算 除限制之外的所有情况
3025 日期/时间格式无法匹配 除限制之外的所有情况
3026 不支持使用变量自动转换运算符 WAITFOR 除限制之外的所有情况
3027 PostgreSQL 不支持 WAITFOR TIME 功能 除限制之外的所有情况
3028 PostgreSQL 不支持带指令的 WAITFOR 除限制之外的所有情况
3061 无法转换系统对象 除限制之外的所有情况
3064 在 PostgreSQL 中,不应在 UPDATE 语句的 FROM 子句中重复目标表 除限制之外的所有情况
3065 无法自动转换 FROM 子句中包含自引用表的 DELETE 语句和 OUTER JOIN 除限制之外的所有情况
3069 无法转换对账单 除限制之外的所有情况
3081 DMS SC 无法转换不支持的 DDL 语句 除限制之外的所有情况
3088 PostgreSQL 不支持全局游标 除限制之外的所有情况
3089 PostgreSQL 不支持动态游标 除限制之外的所有情况
3121 DMS SC 无法转换不支持的数据类型的用法 除限制之外的所有情况
3122 DMS SC 无法将算术运算与日期进行转换 除限制之外的所有情况
3123 DMS SC 无法转换具有混合类型操作数的算术运算 除限制之外的所有情况
3146 PostgreSQL 不支持按位异或运算符 除限制之外的所有情况
3147 PostgreSQL 不支持! <(不小于)运算符 除限制之外的所有情况
3148 PostgreSQL 不支持 !>(不大于)运算符 除限制之外的所有情况
3150 DMS SC 无法转换函数 除限制之外的所有情况
3156 PostgreSQL 不支持二进制数据类型的算术运算 除限制之外的所有情况
3162 DMS SC 无法使用更新语句转换变量赋值 除限制之外的所有情况
3163 DMS SC 无法使用大小写操作数转换算术运算 除限制之外的所有情况
3168 PostgreSQL 不支持对二进制数据执行写入操作 除限制之外的所有情况
3172 DMS SC 无法转换数据库控制台命令语句 除限制之外的所有情况
3177 DMS SC 无法转换系统对象 除限制之外的所有情况
3182 DMS SC 无法转换更新(列)或 COLUMNS_UPDATED 语句 除限制之外的所有情况
3190 DMS SC 无法转换函数 除限制之外的所有情况
3191 PostgreSQL 不支持表值函数 除限制之外的所有情况
9996 出现内部转换器错误 除限制之外的所有情况

限制

“使用生成式人工智能转换数据库对象”功能具有以下限制:

  • 支持生成式 AI 转换的数据库端点在Amazon控制台中不可见。您只能通过将评估报告导出为 PDF 或 CSV 文件来查看。

  • 作为一种概率系统,生成式人工智能辅助架构转换可能无法在所有转换中实现 100% 的准确性。它还可能在一段时间内为相同的 SQL 语句生成不同的结果。您必须查看并验证所有转换输出。

  • 以下各项不支持生成式人工智能转换:

    • 表中的 DEFAULT 约束

    • 函数或过程参数的 DEFAULT 值

    • 计算表中的列

    • TRIGGER

    • 列数据类型

    • 动态 SQL

    • INDEX

    • CONSTRAINT

  • 如果源语句使用多个操作项进行转换,并且使用生成式人工智能处理至少一个操作项,则所有操作项都将替换为 Oracle 目标上的一个操作项 5444 和 Microsoft SQL Server 上的一个操作项 7744。操作项 9997 是一个例外,在使用生成式人工智能处理后被保留下来。

警告

使用生成式人工智能进行转换所需的时间比基本转换更长。

每个Amazon账户都有每分钟配额,限制可以使用生成式 AI 转换的 SQL 语句的数量。超过此限制的语句将在接下来的几分钟内排队等候处理。配额如下:

Region 每Amazon账户每分钟 SQL 语句
美国东部(弗吉尼亚州北部) 最多 40 个语句
美国西部(俄勒冈州) 最多 40 个语句
欧洲地区(法兰克福) 最多 40 个语句