检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
换、仅支持赋值时转换。不支持的场景下即使定义了转换路径,也不能做数据类型转换。 MySQL数据库支持任意两种数据类型之间做转换。 由于存在以上差异,基于MySQL数据库的应用程序向GaussDB数据库迁移时,SQL语句可能由于不支持不同数据类型之间的转换而报错。或者支持转换的场景
数字操作函数列表 MySQL数据库 GaussDB数据库 差异 log2() 支持,存在差异 小数位显示与MySQL存在差异,受GaussDB浮点数据类型限制,可通过参数extra_float_digits控制小数位个数显示。 由于输入精度内部处理差异,GaussDB与MySQL会存在结果计算差异。
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持 - AES_ENCRYPT() 支持 - 父主题: 系统函数
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
63”。由转义字符引起的本函数与MySQL的差异,此为GaussDB与MySQL的转义字符差异。 str字符串中的“\b”,输出结果表现形式与MySQL有差异。此为GaussDB与MySQL的固有差异 str字符串中含有“\0”时,GaussDB由于UTF-8字符集不识别该字符,
{'charset_name' [COLLATE 'collation_name'] | DEFAULT}; GaussDB中暂不支持指定charset_name与数据库字符集不同。具体请参见《开发指南》中“SQL参考 > SQL语法 > S > SET ”章节。 父主题: SQL
JSON数据类型 MySQL数据库 GaussDB数据库 差异 JSON 支持,存在差异 GaussDB数据库MySQL兼容性B模式中的JSON类型与GaussDB数据库原生的JSON类型行为一致,与MySQL行为差异较大,此处不再逐个列出。 GaussDB数据库MySQL兼容性B模式
字符串数据类型 MySQL数据库 GaussDB数据库 差异 CHAR[(M)] 支持,存在差异 输入格式 GaussDB自定义函数参数和返回值不支持长度校验,存储过程参数不支持长度校验,同时也不支持在PAD_CHAR_TO_FULL_LENGTH打开时补齐正确的空格,MySQL支持。
流量控制函数 表1 流量控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 expr1入参仅支持bool类型。非bool类型入参若不能转换为bool类型则报错。 若expr2、expr3两个入参类型不同且两类型间不存在隐式转换函数则报错。 两个入参类型相同时,返回该入参类型。
二进制数据类型 MySQL数据库 GaussDB数据库 差异 BINARY[(M)] 不支持 - VARBINARY(M) 不支持 - TINYBLOB 支持,存在差异 取值范围:GaussDB中该类型由BYTEA类型映射得来,长度不能超过1GB,超过长度限制后会报错。MySQL中该类型
日期与时间数据类型 表1 日期与时间数据类型 MySQL数据库 GaussDB数据库 差异 DATE 支持,存在差异 GaussDB支持date数据类型,与MySQL相比规格上存在如下差异: 输入格式 GaussDB只支持字符类型,不支持数值类型。如支持'2020-01-01'或
7数据库的兼容性对比信息。仅介绍503.0.0版本后新增的兼容性特性,特性的相关规格和约束建议在《开发指南》中查看。 GaussDB数据库在数据类型、SQL功能和数据库对象等基本功能上与MySQL数据库兼容。 由于GaussDB数据库与MySQL数据库在底层框架实现上存在差异,Ga
数据类型支持的属性 表1 数据类型支持的属性 MySQL数据库 GaussDB数据库 NULL 支持 NOT NULL 支持 DEFAULT 支持 ON UPDATE 支持 PRIMARY KEY 支持 CHARACTER SET name 支持 COLLATE name 支持 父主题:
sDB数据库中,字符集必须与数据库的字符集一致,且不支持表内多种字符集混合使用。 utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL 5.7保持一致。 GaussDB中utf8和utf8mb4为同一个字符集。 表1 排序规则列表 MySQL数据库
指南》中查看。 GaussDB数据库在数据类型、SQL功能和数据库对象等基本功能上与MySQL数据库兼容。 GaussDB的执行计划和优化、EXPLAIN显示结果与MySQL不同。 由于GaussDB数据库与MySQL数据库在底层框架实现上存在差异,GaussDB数据库与MySQL数据库仍存在部分差异。
指南》中查看。 GaussDB数据库在数据类型、SQL功能和数据库对象等基本功能上与MySQL数据库兼容。 GaussDB的执行计划和优化、EXPLAIN显示结果与MySQL不同。 由于GaussDB数据库与MySQL数据库在底层框架实现上存在差异,GaussDB数据库与MySQL数据库仍存在部分差异。
MySQL兼容性B模式 数据类型 系统函数 操作符 字符集 排序规则 表达式 SQL 驱动
比较操作符返回结果显示不同。MySQL返回1/0;GaussDB返回t/f。 表1 操作符 MySQL数据库 GaussDB数据库 差异 <> 支持,存在差异 MySQL支持索引,GaussDB不支持索引。 <=> 支持,存在差异 MySQL支持索引,GaussDB不支持索引、hash连接和合并连接。
事务 GaussDB数据库兼容MySQL的事务,但存在部分差异。本章节介绍GaussDB的M-Compatibility数据库中事务相关的差异。 事务默认隔离级别 M-Compatibility默认隔离级别为READ COMMITTED,MySQL默认隔离级别为REPEATABLE-READ。
操作符 GaussDB数据库兼容绝大多数MySQL的操作符,但存在部分差异。除特别说明外,MySQL兼容性B模式中的操作符行为默认为GaussDB原生行为。 表1 操作符 MySQL数据库 GaussDB数据库 差异 安全等于(<=>) 支持 - [NOT] REGEXP 支持,存在差异