检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
WITH AS WITH AS 在GaussDB(DWS)中用于声明一个或多个可以在主查询中通过名字引用的子查询,相当于临时表。DSC工具支持该关键字,迁移工程中保留。 输入示例 1 2 3 4 5 6 7 8 9 10 WITH e AS ( SELECT
DEFAULT,DEFAULT,DEFAULT); SET MySQL INSERT...SET语句的形式插入基于明确指定的值的行。 输入示例 1 2 3 4 # INSERT INTO SET 可以针对性的执行插入操作,但是一次只能插入一行数据,不能批量添加数据 INSERT INTO
唯一索引 普通索引和前缀索引 HASH索引 BTREE索引 SPATIAL空间索引 FULLTEXT全文索引 删除索引 索引重命名 父主题: MySQL语法迁移
Oracle、Teradata和MySQL语法兼容性差异 GaussDB(DWS)支持Oracle、Teradata和MySQL三种兼容模式,分别兼容Oracle、Teradata和MySQL语法,不同兼容模式下的语法行为有一些差异。 数据库兼容模型可以在创建数据库时指定(由DBCOMPA
由于GaussDB(DWS)数据库对表名大小写不敏感,如果原MySQL数据库中存在大小写混用的表名或者纯大写的表名,例如Table01、TABLE01,需要先修改表名为纯小写后才支持迁移,否则会导致迁移后,GaussDB(DWS)无法识别该表。 建议将MySQL也设置成大小写不敏感模式,修改方法:修改/etc/my
GaussDB(DWS)不支持唯一索引(约束)与主键约束联合使用。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 MySQL唯一索引(约束)与主键约束联合使用的场景在工具迁移时会与OLAP场景下的分布键构成复杂的关系。工具暂不支持唯一索引(约束)与主键约束联合使用的场景。
注释 MySQL支持由 '#' 或 '--' 字符引起的单行注释,而GaussDB(DWS)仅支持由双破折号 '--' 字符引起的单行注释。DSC工具迁移时会将 '#' 转化为 '--' 注释。 输入示例 1 2 3 4 5 6 7 ## comment sample create
支持的关键词和特性 DSC支持迁移的MySQL关键字和特性如表1所示。 “版本”列代表初次支持该关键字/特性的DWS集群版本。 “备注”列包含该特性的配置参数,可用于自定义迁移工具如何迁移相应的关键字/特性。 表1 章节 对象->关键词/特性 版本 备注 数据类型 数字类型 8.0
COLLATE 在MySQL中,COLLATE表示默认的数据库排序规则。GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该关键字删除。 输入示例 1 2 3 4 5 6 7 8 CREATE TABLE `public`.`runoob_tbl_test`(
事务管理和数据库管理 事务管理 数据库管理 父主题: MySQL语法迁移
TRUNCATE 删除表 MySQL在使用TRUNCATE语句删除表数据时可以省略“TABLE”关键字,GaussDB(DWS)不支持这种用法。此外,DSC工具在做迁移TRUNCATE语句时会添加“CONTINUE IDENTITY RESTRICT”关键字。 输入示例 1 2 TRUNCATE
除法表达式 MySQL中,除法表达式中,当除数为0时,会返回null值。DWS会报错,因此对除法表达式进行转换,增加一个if条件表达式。 输入示例 1 2 select sum(c1) / c2 as result from table_t1; select sum(c1) / count
数据操作语句(DML) INSERT UPDATE REPLACE 引号 INTERVAL 除法表达式 GROUP BY转换 ROLLUP 父主题: MySQL语法迁移
步骤一:准备MySQL数据 购买RDS实例,参见表1配置关键参数,其他参数可保持默认,如需了解详情请参见RDS文档。 表1 RDS参数 参数项 取值 计费模式 按需计费 区域 华北-北京四 实例名称 rds-demo 数据库引擎 MySQL 数据库版本 5.7及以上 数据库端口 3306
CHECK约束 CHECK约束声明一个布尔表达式,每次要插入的新行或者要更新的行的新值必须使表达式结果为真或未知才能成功,否则会上报一个异常并且不会修改数据库。 声明为字段约束的检查约束应该只引用该字段的数值,而在表约束里出现的表达式可以引用多个字段。 CREATE TABLE CHECK
查看表和数据库的信息 查询表信息 使用系统表pg_tables查询数据库所有表的信息。 1 SELECT * FROM pg_tables; 使用gsql的\d+命令查询表结构。 示例:先创建表customer_t1并插入数据。 1 2 3 4 5 6 7 8 9 CREATE
COMMENT 在MySQL中,COMMENT对表进行注释。GaussDB(DWS)支持该属性修改表定义信息,DSC工具迁移时会添加额外的表属性信息。 输入示例 1 2 3 4 5 6 7 8 CREATE TABLE `public`.`runoob_alter_test`(
RENAME 重命名表名 MySQL重命名表名的语句与GaussDB(DWS)有一些差异。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 工具暂不支持原表名附有DATABASE(SCHEMA)的场景。 MySQL通过RENAME TABLE语句修改表名。 输入示例 1
ROLLUP MySQL中的group by column with rollup需要转换为GaussDB(DWS)中的group by rollup (column); 输入示例 1 2 3 select id,product_id,count(1) from czb_account
操作也不相同。数据库中的数据存储在数据表中。数据表中的每一列都定义了数据类型,用户存储数据时,须遵从这些数据类型的属性,否则可能会出错。下表列出了MySQL数字类型到GaussDB(DWS)的转换示例。 类型对照 表1 数字类型对照表 MySQL数字类型 MySQL INPUT GaussDB(DWS)