检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
字符串数据类型 MySQL数据库 GaussDB数据库 差异 CHAR[(M)] 支持,存在差异 输入格式 GaussDB自定义函数参数和返回值不支持长度校验,存储过程参数不支持长度校验,同时也不支持在PAD_CHAR_TO_FULL_LENGTH打开时补齐正确的空格,MySQL支持。
(1, '数据库', 1.11, 2.12, 3.133), (2, '数据库', 2.11, 2.22, 3.233), (3, '数据库', 3.11, 2.32, 3.333), (4, '数据库', 1.41, 2.42, 3.343), (5, '数据库', 1.51
procs_priv 在MySQL下需要授权后才能查看视图内容,M-Compatibility数据库可以根据默认权限查看到对应的内容。如对于表t1,在MySQL下需要先对t1给对应的用户授权,才能在权限视图中看到对应的权限信息,M-Compatibility数据库下则可以直接在视图中看到t1表相关的权限信息。
概述 MySQL兼容性B模式概述 MySQL兼容性M-Compatibility模式概述
row in set (0.00 sec) mysql> DROP TABLE test_int; 表2 任意精度类型 MySQL数据库 GaussDB数据库 差异 DECIMAL[(M[,D])] [ZEROFILL] 支持,存在差异 MySQL DECIMAL用一个9*9的数组存储
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 DATABASE() 支持 - UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
0修复了该问题,目前GaussDB和MySQL 8.0保持一致。 ISNULL() 支持,存在差异 函数返回值类型在MySQL 5.7和MySQL 8.0中存在差异,结合MySQL 8.0的行为更为合理,因此函数返回值类型兼容MySQL 8.0。 内层嵌套部分聚合函数时,部分场景返回结果MySQL 5.7和MySQL
JSON类型 表1 JSON数据类型 MySQL数据库 GaussDB数据库 差异 JSON 支持,存在差异 GaussDB支持JSON数据类型与MySQL相比,规格存在如下差异: 取值范围: 在MySQL中,JSON数据类型的最大长度为4GB,但在GaussDB中,JSON数据
聚合函数 表1 聚合函数列表 MySQL数据库 GaussDB数据库 差异 AVG() 支持,存在差异 GaussDB中指定DISTINCT且SQL语句包含GROUP BY子句时,不对结果进行排序,MySQL会进行排序。 GaussDB中当expr中的列为BIT、BOOL、整数类
{'charset_name' [COLLATE 'collation_name'] | DEFAULT}; GaussDB中暂不支持指定charset_name与数据库字符集不同。具体请参考《M-Compatibility开发指南》中“SQL参考 > SQL语法 > SQL语句 > S > SET ”章节。
流量控制函数 表1 流量控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 expr1入参仅支持bool类型。非bool类型入参若不能转换为bool类型则报错。 若expr2、expr3两个入参类型不同且两类型间不存在隐式转换函数则报错。 两个入参类型相同时,返回该入参类型。
概述 MySQL兼容性MySQL模式概述 MySQL兼容性M-Compatibility模式概述
表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 由于函数执行机制不同,flags无法传递给内层函数,在cast函数嵌套其他函数(如greatest、least等)时,内层函数返回小于1的值,结果与MySQL不一致。 --GaussDB:
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持,存在差异 ecb为不安全加密模式,GaussDB不支持,默认为cbc模式。 GaussDB中,当指定数据库使用的字符编码是SQL_ASCII时,服务器把字节值0~127根
数字操作函数 表1 数字操作函数列表 MySQL数据库 GaussDB数据库 差异 ABS() 支持 - ACOS() 支持 - ASIN() 支持 - ATAN() 支持 - ATAN2() 支持 - CEILING() 支持,存在差异 部分操作结果类型以及CREATE TABLE
指向返回参数数据类型的指针。 MySQL ODBC对于任意类型均返回SQL_VARCHAR。 GaussDB ODBC的会根据内核返回的不同类型判断返回给应用相应的DataType类型。 ParameterSizePtr 指向返回参数大小的指针。 MySQL ODBC若允许ODBC驱
字符串函数 表1 字符串函数列表 MySQL数据库 GaussDB数据库 差异 ASCII() 支持 - BIT_LENGTH() 支持 - CHAR_LENGTH() 支持,存在差异 GaussDB此函数如果数据库字符集是SQL_ASCII,CHAR_LENGTH()会返回字节数而非字符数。
第一个参数不为NULL且第二个参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,GaussDB会提示类型转换错误。 NULLIF() 支持,存在差异 函数返回值类型在MySQL 5.7和MySQL 8.0中存在差异,考虑到MySQL 8.0更合理,因此函数返回值类型兼容MySQL 8.0。 父主题: 系统函数
数据类型支持的属性 表1 数据类型支持的属性 MySQ数据库 GaussDB数据库 NULL 支持 NOT NULL 支持 DEFAULT 支持 ON UPDATE 支持 PRIMARY KEY 支持 AUTO_INCREMENT 支持 CHARACTER SET name 支持
procs_priv 在MySQL下需要授权后才能查看视图内容,M-Compatibility数据库可以根据默认权限查看到对应的内容。如对于表t1,在MySQL下需要先对t1给对应的用户授权,才能在权限视图中看到对应的权限信息,M-Compatibility数据库下则可以直接在视图中看到t1表相关的权限信息。