检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
PURGE 在Oracle中,DROP TABLE语句用于将一张表放入回收站。而PURGE语句则不同,用于将表或索引从回收站彻底删除,并释放所有与该对象相关的空间,或清空整个回收站,也可以是从回收站中彻底删除一个已删除表空间的部分或全部内容。 通过Oracle语法迁移后,查询中将不含PURGE。
OUTER QUERY (+) GaussDB(DWS)支持JOIN,因此添加supportJoinOperator配置参数。 设置supportJoinOperator=false后OUTER QUERY (+)可迁移。 输入:OUTER QUERY(+) 1 2 3 4 5 6
Bitmap索引 该功能通过BitmapIndexSupport设置,迁移过程中默认注释掉Bitmap索引。 输入:Bitmap索引 1 2 3 CREATE BITMAP INDEX emp_bitmap_idx ON index_demo (gender); 输出 1 /*CREATE
第三方许可 本节包含适用于该工具的第三方许可。 ANTLR v4.9.3 Apache Commons IO 2.11 Apache Commons CLI 1.5 Apache Log4j 2.17.2 JSON.org json 20220320 postgresql 42.4
NULL ) AS ROW_NUM1列为额外返回的一列。 子查询或函数内不支持对表的命名引用。 例如,如果输入的查询包含表名(例如foo),迁移工具不会将基于该表命名的引用从子查询(foo.fooid)中迁移到该表中,或从调用该子查询的函数(getfoo(foo.fooid))中迁移到该表中。
TABLE语句支持创建索引。DSC支持带有主索引(PRIMARY INDEX)和唯一索引(UNIQUE INDEX)的TABLE语句。 该工具不会添加DISTRIBUTE BY HASH用于创建具有主键(PRIMARY KEY)和非唯一主索引的表。 输入:CREATE TABLE,使用INDEX
表中的约束应用于多列。DSC支持以下约束: REFERENCES约束/FOREIGN KEY:目前无法通过工具迁移。 PRIMARY KEY约束:可通过工具迁移。 UNIQUE约束:可通过工具迁移。 输入:CREATE TABLE,使用CONSTRAINT 1 2 3 4 5 6
参数可以配置如何迁移包含WITH CHECK OPTION关键字的视图。如果该参数设置为false,则工具跳过该查询并记录日志。 如果CREATE VIEW包含LOCK关键字,则工具根据tdMigrateLOCKoption的设置决定如何迁移VIEW查询。 输入:CREATE VIEW
Teradata格式 以YYYYMMDD格式输入的日期 输入 输出 1 2 3 SELECT 1 FROM tb_dt_fmtyyyymmdd WHERE JobName ='${JOB_NAME}' AND TXDATE = ${TX_DATE} - 19000000; SELECT
系统视图 DSC将系统视图dbc.columnsV和dbc.IndicesV进行迁移,输出如下结果。 输入: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
BTREE索引 GaussDB(DWS)支持BTREE索引,但USING BTREE关键字在语句中的位置与MySQL存在差异。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 内联BTREE索引 输入示例 1 2 3 4 5 6 7 8 9 10
Netezza配置 设置Netezza配置参数可在迁移Netezza数据库脚本时自定义迁移工具的行为。 打开config文件夹中的features-netezza.properties文件,并根据实际需要设置表1中的参数。 表1 features-netezza.properties文件中的配置参数
日志概述 日志文件是DSC所有操作和状态的存储库。支持以下日志文件: SQL迁移日志 DSC.log:SQL迁移的所有活动。 DSCError.log:SQL迁移错误。 successRead.log:SQL迁移中对输入文件的成功读次数。 successWrite.log:SQL迁移中对输入文件的成功写次数。
数据库 在MySQL中,DATABASE 是一种模式对象,等同于Oracle、GaussDB(DWS)数据库的SCHEMA概念。DSC工具迁移时考虑了以下两个场景。 创建数据库 输入示例 create database IF NOT EXISTS dbname1 CHARACTER
维护。 图1 表的分区和子分区 DSC支持范围分区。 该工具不支持以下分区/子分区(在迁移脚本中会被注释掉): 列表分区 Hash分区 范围子分区 列表子分区 Hash子分区 未来可能会支持当前不支持的分区/子分区。该工具中,用户可设置配置参数,启用/禁用对不支持语句的注释功能。详情请参见Oracle配置参数。
视图 视图是基于一个或多个表或视图的逻辑表。视图本身不含数据。 在输入中,如果表名称前没有模式名称修饰,则在输出中,会修改为用视图的模式名去修饰表。 以下为视图迁移前后的语法示例: 表名称不带模式名 图1 输入:视图中不带模式名的表tab1、tab2 表名称包含模式名 图2 输出:用视图的模式名去修饰表
序列 SEQUENCE是Oracle对象,用于创建数字序列号。该序列用于创建自动编号字段,可用作主键。 如果参数MigSupportSequence设为true(默认值),则在PUBLIC模式中创建序列。 CACHE和ORDER参数不支持迁移。 Oracle中,序列的MAXVAL
日期函数 本节介绍如下日期函数: ADD_MONTHS DATE_TRUNC LAST_DAY MONTHS_BETWEEN SYSTIMESTAMP ADD_MONTHS ADD_MONTHS是Oracle系统函数,GaussDB(DWS)中并不隐式支持该函数。 在使用此函数之前,请执行如下操作:
LOB函数 本节介绍如下LOB函数: DBMS_LOB.APPEND DBMS_LOB.COMPARE DBMS_LOB.CREATETEMPORARY DBMS_LOB.INSTR DBMS_LOB.SUBSTR DBMS_LOB.APPEND DBMS_LOB.APPEND函数将源LOB的内容追加到指定的LOB。
分析函数 分析函数根据一组行计算一个聚合值。它与聚集函数的不同之处在于,它为每个组返回多行。分析函数通常用于计算累积值,数据移动值,中间值和报告聚合值。DSC支持分析函数,包括RATIO_TO_REPORT函数。 输入:分析函数 1 2 3 4 5 SELECT empno, ename