检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
~ 5874897-12-31 AD,支持公元前的日期,宽松模式下超过范围时,返回的是0值:0000-00-00,严格模式下会报错。MySQL的范围是 0000-00-00 ~ 9999-12-31,宽松模式下超过范围后,各个场景下的表现并不一致,可能报错(如SELECT查询语句中
支持,存在差异 ecb为不安全加密模式,GaussDB不支持,默认为cbc模式。 GaussDB中,当指定数据库使用的字符编码是SQL_ASCII时,服务器把字节值0~127根据ASCII标准解释,而字节值128~255则当作无法解析的字符;如果该函数的输入输出包含了任何非ASCII
流程控制函数 表1 流程控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 当第一个参数为TRUE且第三个参数表达式中存在隐式类型转换错误,或者第一个参数为FALSE且第二个参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,GaussDB会提示类型转换错误。
当GaussDB使用的字符编码是SQL_ASCII时,服务器会根据ASCII标准对字节值0~127进行解释,而字节值128~255则当作无法解析的字符。如果该函数的输入输出包含了任何非ASCII数据,数据库将无法帮助用户转换或者校验非ASCII字符,从而与MySQL的行为产生较大差异。
ySQL末尾空格显示为\x00。 宽松模式下, BINARY类型面对输入超过n的字节数的字符输入(例如中文字符), 会将超限的整个字符截断。MySQL中会将超限的整个字符的前几位满足n范围内的字节信息保留,但输出时字符信息显示乱码。 在MySQL 8.0以上版本,默认以0x开头形
ySQL末尾空格显示为\x00。 宽松模式下, BINARY类型面对输入超过n的字节数的字符输入(例如中文字符), 会将超限的整个字符截断。MySQL中会将超限的整个字符的前几位满足n范围内的字节信息保留,但输出时字符信息显示乱码。 在MySQL 8.0以上版本,默认以0x开头形
GaussDB数据库兼容绝大多数MySQL的系统函数,但存在部分差异。 当前存在原GaussDB的系统函数和MySQL系统函数同名,但是M-Compatibility兼容模式下尚未支持这些函数的情况;一部分未支持的同名函数会提示用户在M-Compatibility兼容模式下不支持,另外一部分同名函
schema_name 现有模式的名称。 取值范围:已存在的模式名。 RENAME TO new_name 修改模式的名称。 new_name:模式的新名称。 模式名不能和当前数据库里其他的模式重名。 模式名不能和当前数据库的初始用户重名。 模式的名称不可以“pg_”开头。 模式的名称不可以“gs_role_”开头。
流程控制函数 表1 流程控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 当第一个参数为TRUE且第三个参数表达式中存在隐式类型转换错误,或者第一个参数为FALSE且第二个参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,GaussDB会提示类型转换错误。
网络地址函数 表1 网络地址函数列表 MySQL数据库 GaussDB数据库 差异 INET_ATON() 支持 - INET_NTOA() 支持 - INET6_ATON() 支持 - INET6_NTOA() 支持,存在差异 GaussDB中,有效入参类型支持VARBINARY或BINARY类型;
不可以作为函数或变量的标识符。 保留 ANY、ARRAY、BUCKETS、DO、END、LESS、MODIFY、OFFSET、ONLY、RETURNING、SOME、USER 不可以作为任意数据库标识符。 GaussDB优化器与MySQL的优化器存在差异,由于优化器生成的执行计划的差异,可能
整数溢出处理的行为: MySQL在5.7版本,此函数入参和结果的最大值都为2^32=4294967296,在入参或结果的period对应的月份累加值以及month_number超过uint32范围时存在整数回绕问题;在MySQL 8.0中已修复此问题。GaussDB下此函数的表现与MySQL
整数溢出处理的行为。 MySQL在5.7版本,此函数入参和结果的最大值都为2^32=4294967296,在入参或结果的period对应的月份累加值以及month_number超过uint32范围时存在整数回绕问题;在MySQL 8.0中已修复此问题。GaussDB下此函数的表现与MySQL
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 DATABASE() 支持 - UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
DCL 表1 DCL语法兼容介绍 概述 详细语法说明 差异 SET NAMES指定COLLATE子句 SET [ SESSION | LOCAL ] NAMES {'charset_name' [COLLATE 'collation_name'] | DEFAULT}; Gaus
UP_CONCAT最大返回长度,超长截断,目前能返回的最大长度是1073741823,小于MySQL。 默认UTF8字符集下,由于GaussDB的UTF8字符集的最大字节数与MySQL的UTF8字符集最大字节数不同。会导致创建的表结构与MySQL存在差异。 -- GaussDB:
会与MySQL有一定差异。要实现与MySQL的兼容,需要设置GUC参数standard_conforming_strings取值为off,在这种情况下,转义字符的处理将与MySQL兼容,但是使用转义字符\f、\Z、\0和\uxxxx的场景会与MySQL存在差异。 表1 JSON函数列表
schema_name 现有模式的名称。 取值范围:已存在的模式名。 RENAME TO new_name 修改模式的名称。非系统管理员要改变模式的名称,则该用户必须在此数据库上有CREATE权限。 new_name:模式的新名称。 模式名不能和当前数据库里其他的模式重名。 模式名不能和当前数据库的初始用户重名。
精度传递开关关闭的情况下,也即m_format_behavior_compat_options中的enable_precision_decimal未设置时,PI函数的返回值精度与MySQL的有差异:MySQL中PI函数的结果仅保留四舍五入之后的小数后6位,而GaussDB的结果会保留四舍五入之后的小数后15位。
时GaussDB会报错。 当时间类型的时、分、秒、纳秒为0时,GaussDB和MySQL可能存在符号位不同的情况。 YEAR[(4)] 支持,存在差异 GaussDB支持year数据类型,与MySQL相比规格上存在如下差异: 创建year类型的字段,和mysql显示有所不同,Ga