检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
crement的值,会产生错误。MySQL允许,并说明auto_increment_offset会被忽略。 在表有主键或索引的情况下,ALTER TABLE命令重写表数据的顺序与MySQL不一定相同,GaussDB按照表数据存储顺序重写,MySQL会按主键或索引顺序重写,导致自增值的顺序可能不同。
事务 GaussDB数据库兼容MySQL的事务,但存在部分差异。本章节介绍GaussDB的M-Compatibility数据库中事务相关的差异。 事务默认隔离级别 M-Compatibility默认隔离级别为READ COMMITTED,MySQL默认隔离级别为REPEATABLE-READ。
MySQL兼容性M-Compatibility模式 数据类型 系统函数 操作符 字符集 排序规则 事务 SQL 驱动
数据类型 数值数据类型 日期与时间数据类型 字符串数据类型 二进制数据类型 JSON数据类型 数据类型支持的属性 数据类型转换 父主题: MySQL兼容性B模式
SQL兼容性概述 GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 部分关键字在MySQL可以做标识符但在M-Compatibility不可以或存在限制,如表1所示。 表1 受限标识符列表 关键字类型 关键字
MySQL兼容性B模式 数据类型 系统函数 操作符 字符集 排序规则 表达式 SQL 驱动
SQL SQL兼容性概述 关键字 标识符 DDL DML DCL 其他语句 用户与权限 系统表和系统视图 父主题: MySQL兼容性M-Compatibility模式
启用定时任务。级别:全局、数据库。 EXECUTE 使用户能够执行存储过程。级别:全局、数据库、存储过程。 FILE 使用户能够使服务器读取或写入文件。级别:全局。 GRANT OPTION 允许向其他账户授予权限或从其他账户删除权限。级别:全局、数据库、表、存储过程、代理。 INDEX 允许创建或删除索引。级别:全局、数据库、表。
column和database.table.column;GaussDB只支持使用column,不支持使用table.column和database.table.column,二者存在差异。 UPDATE SET执行顺序与MySQL存在差异 UPDATE ... SET MySQL中,UPDATE
型时行为存在差异: MySQL 5.7中,AVG(TEXT/BLOB)返回值类型为MEDIUMTEXT类型;MySQL 8.0中,AVG(TEXT/BLOB)返回值类型为DOUBLE类型。 在GaussDB中,AVG(TEXT/BLOB)返回值类型与MySQL 8.0版本保持一致。
启用DELETE. 级别:全局、数据库、表。 DROP 允许删除数据库、表和视图。级别:全局、数据库、表。 EVENT 启用定时任务。级别:全局、数据库。 EXECUTE 使用户能够执行存储过程。级别:全局、数据库、存储过程。 FILE 使用户能够使服务器读取或写入文件。级别:全局。
成空格,与MySQL行为存在差异。如果兼容性参数m_format_behavior_compat_options中包含disable_zero_chars_conversion选项,则禁止将“\0”字符转换成空格,与MySQL行为一致。 ODBC 父主题: MySQL兼容性M-Compatibility模式
默认情况下会与MySQL有一定差异。要实现与MySQL的兼容,需要设置GUC参数standard_conforming_strings取值为off,在这种情况下,转义字符的处理将与MySQL兼容,但是使用转义字符\f、\Z、\0和\uxxxx的场景会与MySQL存在差异。 表1
SQL DDL DML DCL 父主题: MySQL兼容性B模式
驱动 ODBC 父主题: MySQL兼容性M-Compatibility模式
M-Compatibility中嵌套事务不会自动提交,MySQL会自动提交。 事务相关语法 自动提交 M-Compatibility使用GaussDB存储,继承GaussDB事务机制,事务中执行DDL,DCL不会自动提交。MySQL在DDL、DCL、管理类语句,锁相关语句会自动提交。
支持,存在差异 返回值与MySQL有差异,GaussDB返回的是numeric,MySQL返回的是int。 UTC_DATE() 支持,存在差异 MySQL支持无括号调用,GaussDB不支持。MySQL入参整型值会按照一字节最大值255整数回绕。 MySQL入参只支持0-6整数,
utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL 5.7保持一致。 使用latin1字符序需要设置兼容性参数m_format_dev_version = 's2'。 表1 排序规则列表 MySQL数据库 GaussDB数据库 utf8mb4_general_ci
驱动 JDBC 父主题: MySQL兼容性B模式
窗口函数 窗口函数差异说明:MySQL数据库管理系统在调用窗口函数时,OVER子句中的ORDER BY子句与PARTITION BY子句不支持使用列别名,GaussDB数据库支持使用列别名。 表1 窗口函数列表 MySQL数据库 GaussDB数据库 差异 LAG() 支持,存在差异