检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
型如果为utf8,每个字符最多占用3个字节。根据转换规则,同样的字段长度,会导致GaussDB(DWS)出现字段超长的问题。 处理方法 假设MySQL字段为varchar(n),则将GaussDB(DWS)对应的字段长度设置为varchar(n*3)即可。 父主题: 数据导入/导出
原因分析 在GaussDB(DWS)中,SQL语句中的表字段等名称带双引号时大小写敏感;不带双引号时大小写不敏感,按全小写处理。 处理方法 在大小写不敏感的场景下,将字段名称的双引号去掉。 在大小写敏感的场景下,执行SQL语句时需要给字段名称加上双引号。 示例: table01中,使用
MySQL配置 设置MySQL配置参数可在迁移MySQL数据库脚本时自定义迁移工具的行为。 打开config文件夹中的features-mysql.properties文件,并根据实际需要设置features-mysql.properties文件中的配置参数中的参数。 表1 features-mysql
GROUP BY转换 MySQL/ADB分组查询的时候允许查询非分组字段,不报错;DWS分组查询时只能查询分组字段和聚集函数,报错。因此补齐没有group by的查询分组字段。 输入示例 1 SELECT e.department_id, department_name, ROUND(AVG(salary)
MySQL SQL迁移 工具支持从MySQL到GaussDB(DWS)的迁移,包括模式、DML、查询、系统函数、PL/SQL等。 在LINUX中执行MySQL迁移 在Linux中执行以下命令开始迁移。用户需指定源数据库、输入和输出文件夹路径和日志路径;应用程序语言类型是SQL。
GaussDB(DWS)字段设计规则 选择数据类型 在字段设计时,基于查询效率的考虑,一般遵循以下原则: 【建议】尽量使用高效数据类型。 选择数值类型时,在满足业务精度的情况下,选择数据类型的优先级从高到低依次为整数、浮点数、NUMERIC。 【建议】当多个表存在逻辑关系时,表示同一含义的字段应该使用相同的数据类型。
MySQL语法迁移 支持的关键词和特性 数据类型 函数和表达式 表(可选参数、操作) 索引 注释 数据库 数据操作语句(DML) 事务管理和数据库管理 父主题: DSC
("user"); 系统表隐藏字段名作字段名 定义字段名和GaussDB(DWS)中系统表隐藏字段重名,需重新命名:包括xc_node_id,tableoid, cmax, xmax, cmin, xmin, ctid, tid;重新命名方式,字段后加_new,例如xc_node
characters]) 从字符串string的指定位置删除只包含characters中字符(缺省为空格)的最长的字符串。 从字符串string的指定位置删除只包含characters中字符(缺省为空格)的最长的字符串。 从字符串string的指定位置删除等于characters的字符串(缺省为空格)。
使用GaussDB(DWS) 的ODBC驱动,SQL查询结果中字符类型的字段内容会被截断 问题现象 使用GaussDB(DWS)的ODBC驱动,SQL查询结果中字符类型的字段内容会被截断,需通过SQL语法CAST BYTEA转成二进制才能完整取出字段信息。但是,同样的程序连接ORACLE、SQL
CHECK约束声明一个布尔表达式,每次要插入的新行或者要更新的行的新值必须使表达式结果为真或未知才能成功,否则会上报一个异常并且不会修改数据库。 声明为字段约束的检查约束应该只引用该字段的数值,而在表约束里出现的表达式可以引用多个字段。 CREATE TABLE CHECK 在G
集合类型 概述 MySQL ENUM是一个字符串对象,具有从列创建时在列规范中明确枚举的允许值列表中选择的值。 SET是一个字符串对象,可以有零个或多个值,每个值必须从创建表时指定的允许值列表中选择。 类型对照 表1 集合类型对照表 MySQL集合类型 MySQL INPUT GaussDB(DWS)
e类型字段自动转换为timestamp类型的问题? 创建数据库时,可通过DBCOMPATIBILITY参数指定兼容的数据库的类型,DBCOMPATIBILITY取值范围:ORA、TD、MySQL。分别表示兼容Oracle、Teradata和MySQL数据库。如果创建数据库时不指定
支持的关键词和特性 DSC支持迁移的MySQL关键字和特性如表1所示。 “版本”列代表初次支持该关键字/特性的DWS集群版本。 “备注”列包含该特性的配置参数,可用于自定义迁移工具如何迁移相应的关键字/特性。 表1 章节 对象->关键词/特性 版本 备注 数据类型 数字类型 8.0
DBCOMPATIBILITY 'mysql' TEMPLATE template0; ADB中的数据库的概念相当于GaussDB(DWS)的Schema的概念,因此目的端DWS需要在新创建的数据库中创建对应的Schema。 先切换到新创建的数据库,再执行以下SQL语句创建Schema。
唯一索引 普通索引和前缀索引 HASH索引 BTREE索引 SPATIAL空间索引 FULLTEXT全文索引 删除索引 索引重命名 父主题: MySQL语法迁移
在GaussDB(DWS)中用于声明一个或多个可以在主查询中通过名字引用的子查询,相当于临时表。DSC工具支持该关键字,迁移工程中保留。 输入示例 1 2 3 4 5 6 7 8 9 10 WITH e AS ( SELECT city, sum(population) FROM
DataCheck基本功能 支持源端为DWS,MySQL,PostgreSQL数据库与目标端为DWS数据库的数据校验。 支持通用类型字段校验:数值、时间、字符类型。 支持校验级别设置:包括high、middle、low三种。 支持指定schema、表名、列名进行校验。 支持指定记录的校验范围,默认为校验所有记录。
除法表达式 MySQL中,除法表达式中,当除数为0时,会返回null值。DWS会报错,因此对除法表达式进行转换,增加一个if条件表达式。 输入示例 1 2 select sum(c1) / c2 as result from table_t1; select sum(c1) / count
注释 MySQL支持由 '#' 或 '--' 字符引起的单行注释,而GaussDB(DWS)仅支持由双破折号 '--' 字符引起的单行注释。DSC工具迁移时会将 '#' 转化为 '--' 注释。 输入示例 1 2 3 4 5 6 7 ## comment sample create