检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
比较函数 表1 比较函数列表 MySQL数据库 GaussDB数据库 差异 COALESCE() 支持,存在差异 union distinct场景下,返回值精度与MySQL不完全一致。 当第一个不为NULL的参数的后续参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,G
JSON 支持,存在差异 GaussDB数据库MySQL兼容性B模式中的JSON类型与GaussDB数据库原生的JSON类型行为一致,与MySQL行为差异较大,此处不再逐个列出。 GaussDB数据库MySQL兼容性B模式中的JSON类型具体行为请参见《开发指南》中的“SQL参考 >
加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持,存在差异 ecb为不安全加密模式,GaussDB不支持,默认为cbc模式。 GaussDB中,当指定数据库使用的字符编码是SQL_ASCII时,服务器把字节值0~127根据ASCII标准解释
该函数作为子查询结合CREATE TABLE AS使用时,单独执行该函数的子查询语句没有报错或告警时: GaussDB在严格模式和宽松模式下,CREATE TABLE AS语句执行成功,建表成功。 MySQL在严格模式下,CREATE TABLE AS语句执行可能报错,建表失败。 LEAD() 支持,存在差异 与LAG()函数差异点相同。
系统函数兼容性概述 GaussDB数据库兼容绝大多数MySQL的系统函数,但存在部分差异。 除特别说明外,MySQL兼容性B模式中的函数行为默认为GaussDB原生行为。 GaussDB MySQL兼容性的绝大部分系统函数目前均存在返回值与MySQL精度不一致(结果后面0的位数)
输入格式 GaussDB中该类型的长度不能超过1GB,超过长度限制后会报错。MySQL中该类型不能超过255字节,超过长度限制后,在严格模式下会报错,在宽松模式下会对数据进行截断并告警。 GaussDB不支持转义字符输入,不支持""双引号输入,MySQL支持。 操作符 GaussDB能正
ODBC ODBC接口参考 父主题: 驱动
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持 - AES_ENCRYPT() 支持 - 父主题: 系统函数
其他语句 表1 其他语法兼容介绍 概述 详细语法说明 差异 事务相关语法 数据库默认隔离级别 M-Compatibility默认隔离级别为READ COMMITTED,MySQL默认隔离级别为REPEATABLE READ。 M-Compatibility隔离级别只有READ COMMITTED、REPEATABLE
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 DATABASE() 支持 - UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
DCL 表1 DCL语法兼容介绍 概述 详细语法说明 差异 SET NAMES指定COLLATE子句 SET [ SESSION | LOCAL ] NAMES {'charset_name' [COLLATE 'collation_name'] | DEFAULT}; Gaus
聚合函数 表1 聚合函数列表 MySQL数据库 GaussDB数据库 差异 AVG() 支持,存在差异 GaussDB中指定DISTINCT且SQL语句包含GROUP BY子句时,不对结果进行排序,MySQL会进行排序。 GaussDB中当expr中的列为BIT、BOOL、整数类
JSON函数 JSON函数差异说明:对于JSON函数和其他字符入参函数,如果输入中包含转义字符,默认情况下会与MySQL有一定差异。要实现与MySQL的兼容,需要设置GUC参数standard_conforming_strings取值为off,在这种情况下,转义字符的处理将与My
当前存在原GaussDB的系统函数和MySQL系统函数同名,但是M-Compatibility兼容模式下尚未支持这些函数的情况;一部分未支持的同名函数会提示用户在M-Compatibility兼容模式下不支持,另外一部分同名函数仍然保持原GaussDB系统函数的行为。同名函数会与MySQL
5”有多个小数点的字符串形式输入,在宽松模式下MySQL会发生错误解析,抛出WARNING并插表成功,例如将“1.2.3.4.5”插入表后值为12。 GaussDB: 整型类型对于类似“1.2.3.4.5”有多个小数点的的字符串形式输入,在宽松模式下,会将第二个小数点后的字符当作非法
GaussDB返回整型,MySQL 5.7返回DECIMAL。该情况下会导致嵌套场景时,floor函数作为内层函数存在差异。 -- 宽松模式下: SET m_format_behavior_compat_options='enable_precision_decimal'; CREATE
式转换为int类型后的值依次比较。 -- '1970-01-01'和'1970-01-02'转换为int类型时都为1970(兼容MySQL模式下,转换时遇到非法字符后忽略,将前面部分转换为int类型),比较结果为相等,因此返回结果为true。 gaussdb=# SELECT '1970-01-01'
JSON 支持,存在差异 GaussDB数据库MySQL兼容性B模式中的JSON类型与GaussDB数据库原生的JSON类型行为一致,与MySQL行为差异较大,此处不再逐个列出。 GaussDB数据库MySQL兼容性B模式中的JSON类型具体行为请参见《开发指南》中的“SQL参考 >
ODBC接口参考 获取参数描述信息 SQLDescribeParam接口是ODBC API中的一个函数,用于获取与预处理SQL语句(如调用SQLPrepare)相关参数的描述信息。它可以返回参数的类型、大小、是否允许NULL值等元数据,这对于动态构建SQL语句和绑定参数非常有用。