检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
事务 GaussDB数据库兼容MySQL的事务,但存在部分差异。本章节介绍GaussDB的M-Compatibility数据库中事务相关的差异。 事务默认隔离级别 M-Compatibility默认隔离级别为READ COMMITTED,MySQL默认隔离级别为REPEATABLE-READ。
数据类型 GaussDB数据库的数据类型大部分功能场景与MySQL一致,但存在部分差异。 除特别说明外,MySQL兼容性B模式中的数据类型精度、标度、位数大小等默认不支持用浮点型数值定义,建议使用合法的整型数值定义。 数值数据类型 日期与时间数据类型 字符串数据类型 二进制数据类型
MySQL兼容性M-Compatibility模式 MySQL兼容性M-Compatibility模式概述 数据类型 系统函数 操作符 字符集 排序规则 事务 SQL 驱动 计划外应用无损透明 父主题: 集中式版
为保留关键字,在MySQL中为非保留关键字,其差异为:在M-Compatibility模式下不可作为表名、列名、列别名、AS列别名、AS表别名、表别名、函数名和变量名,在MySQL中支持。 当关键字在M-Compatibility模式下为非保留关键字,在MySQL中为保留关键字,
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 部分关键字在MySQL可以做标识符但M-Compatibility不可以或存在限制,如表1所示。 表1 限制做标识符列表 关键字类型 关键字 约束 保留(可以是类型或函数)
M-Compatibility数据库自带的表,视图设置null。 information_schema.tables table_collation 在M-Compatibility下,此字段与MySQL行为表现有差异。如果表指定的是视图,则为null。如果指定的表在创建时,未使用COLLATE子句指定列的排序规则,则为null。
MySQL兼容性B模式 MySQL兼容性B模式概述 数据类型 系统函数 操作符 字符集 排序规则 表达式 SQL 驱动 父主题: 集中式版
MySQL兼容性M-Compatibility模式 MySQL兼容性M-Compatibility模式概述 数据类型 系统函数 操作符 字符集 排序规则 事务 SQL 驱动 父主题: 分布式版
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 部分关键字在MySQL可以做标识符但M-Compatibility不可以或存在限制,如表1所示。 表1 限制做标识符列表 关键字类型 关键字 约束 保留(可以是类型或函数)
驱动 ODBC 父主题: MySQL兼容性M-Compatibility模式
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
'\b' 可以与'\\b'匹配,MySQL匹配失败。 GaussDB新框架下中使用“\”表示转义字符,而MySQL中使用“\\”。 MySQL不支持2个操作符连在一起使用。 模式字符串pat非法入参,只存在右单括号’)’时,GaussDB数据库报错。MySQL存在bug,后续版本已经修复此问题。
有引号标识符中,GaussDB对于创建了列名为纯数字或科学计算法的表,不支持直接使用,需要在引号中使用;对于点操作符(.)场景,列名为纯数字或科学计算法的表也需要在引号中使用。例如: -- 创建列名为纯数字或科学计算法的表 m_db=# CREATE TABLE t1(`123` int
有引号标识符中,GaussDB对于创建了列名为纯数字或科学计算法的表,不支持直接使用,需要在引号中使用;对于点操作符(.)场景,列名为纯数字或科学计算法的表也需要在引号中使用。例如: -- 创建列名为纯数字或科学计算法的表 m_db=# CREATE TABLE t1(`123` int
指定,GaussDB数据库中,字符集必须与数据库的字符集一致,且不支持表内多种字符集混合使用。 utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL 5.7保持一致。 表1 排序规则列表 MySQL数据库 GaussDB数据库 utf8mb4_general_ci
字符集 GaussDB数据库支持指定数据库、模式、表或列的字符集,支持的范围如下。 表1 字符集列表 MySQL数据库 GaussDB数据库 utf8mb4 支持 gbk 支持 gb18030 支持 utf8 支持 binary 支持 父主题: MySQL兼容性B模式
聚合函数 表1 聚合函数列表 MySQL数据库 GaussDB数据库 差异 GROUP_CONCAT() 支持,存在差异 当group_concat参数中同时有DISTINCT和ORDER BY语法时,所有ORDER BY后的表达式必须也在DISTINCT的表达式之中。 group_concat(
用户权限验证与MySQL存在差异。 GaussDB中需要拥有指定表所在Schema的USAGE权限,同时还需要拥有指定表的任意表级权限或列级权限,仅显示拥有SELECT、INSERT、UPDATE、REFERENCES和COMMENT权限的列信息。 MySQL中需要拥有指定表的任意表级
加密函数 表1 加密函数列表 MySQL数据库 GaussDB数据库 差异 AES_DECRYPT() 支持 - AES_ENCRYPT() 支持 - 父主题: 系统函数
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。