检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
sDB数据库中,字符集必须与数据库的字符集一致,且不支持表内多种字符集混合使用。 utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL 5.7保持一致。 GaussDB中utf8和utf8mb4为同一个字符集。 表1 排序规则列表 MySQL数据库
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。 本章节介绍GaussDB数据库当前支持的MySQL语法。 DDL DML DCL 父主题: MySQL兼容性B模式
MySQL)服务进行拆分,独立发布。 原挂靠在云数据库GaussDB(for MySQL)服务下的云数据库GaussDB产品,包括数据库计算、数据库存储、数据库备份空间,拆分后将挂靠在云数据库GaussDB服务下。 原先在云数据库GaussDB(for MySQL)服务下有效期内的现金券、优惠券等优
二进制数据类型 表1 二进制数据类型 MySQL数据库 GaussDB数据库 差异 BINARY[(M)] 不支持 - VARBINARY(M) 不支持 - TINYBLOB 支持 取值范围:GaussDB中该类型由BYTEA类型映射得来,长度不能超过1GB,超过长度限制后会报错
比较操作符返回结果显示不同。MySQL返回1/0;GaussDB返回t/f。 表1 操作符 MySQL数据库 GaussDB数据库 差异 <> 支持,存在差异 MySQL支持索引,GaussDB不支持索引。 <=> 支持,存在差异 MySQL支持索引,GaussDB不支持索引、hash连接和合并连接。
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 部分关键字在MySQL可以做标识符但M-Compatibility不可以或存在限制,如表1所示。 表1 限制做标识符列表 关键字类型 关键字 约束 保留(可以是类型或函数)
ALTER ROUTINE 允许更改或删除存储过程。级别:全局、数据库、例程。 CREATE 启用数据库和表创建。级别:全局、数据库、表。 CREATE ROUTINE 启用存储过程创建。级别:全局、数据库。 CREATE TABLESPACE 允许创建、更改或删除表空间和日志文件组。级别:全局。
ALTER ROUTINE 允许更改或删除存储过程。级别:全局、数据库、例程。 CREATE 启用数据库和表创建。级别:全局、数据库、表。 CREATE ROUTINE 启用存储过程创建。级别:全局、数据库。 CREATE TABLESPACE 允许创建、更改或删除表空间和日志文件组。级别:全局。
系统函数 GaussDB数据库兼容绝大多数MySQL的系统函数,但存在部分差异。 除特别说明外,MySQL兼容性B模式中的函数行为默认为GaussDB原生行为。 GaussDB MySQL兼容性的绝大部分系统函数目前均存在返回值与MySQL精度不一致(结果后面0的位数)的问题,这
分区表对导入操作的性能影响 在GaussDB内核实现中,分区表数据的插入的处理过程相比非分区表增加分区路由部分的开销,因从整体上分区表场景的数据插入开销主要看成:(1)heap-insert基表插入、(2)partition-routing分区路由两个部分,其中heap基表插入解
字符集 GaussDB数据库支持指定数据库、模式、表或列的字符集,支持的范围如下。 表1 字符集列表 MySQL数据库 GaussDB数据库 utf8mb4 支持 gbk 支持 gb18030 支持 utf8 支持 binary 支持 父主题: MySQL兼容性B模式
M-Compatibility中,GLOBAL是全局会话级别生效,只针对当前数据库实例,其它数据库不影响。 MySQL中,会使所有数据库生效。 -- SET TRANSACTION会话级生效。 m_db=# SET TRANSACTION ISOLATION LEVEL READ COMMITTED
流量控制函数 表1 流量控制函数列表 MySQL数据库 GaussDB数据库 差异 IF() 支持,存在差异 expr1入参仅支持bool类型。非bool类型入参若不能转换为bool类型则报错。 若expr2、expr3两个入参类型不同且两类型间不存在隐式转换函数则报错。 两个入参类型相同时,返回该入参类型。
表1 日期与和时间函数列表 MySQL数据库 GaussDB数据库 差异 ADDDATE() 支持,存在差异 此函数的表现会因为interval表达式的差异与MySQL有差异,具体可见INTERVAL差异说明。 ADDTIME() 支持,存在差异 MySQL对第二入参为DATETIM
MySQL兼容性M-Compatibility模式 MySQL兼容性M-Compatibility模式概述 数据类型 系统函数 操作符 字符集 排序规则 事务 SQL 驱动 父主题: 分布式版
VIRTUAL] MySQL数据库中虚拟生成列支持创建索引,GaussDB数据库中不支持。 MySQL数据库中虚拟生成列支持作为分区键,GaussDB数据库中不支持。 GaussDB数据库中生成列的CHECK约束兼容MySQL 8.0数据库的行为,即CHECK约束检查生效。 MySQL数据库
支持,存在差异 GaussDB没有SIGNAL语句,MySQL支持SIGNAL语句。 GaussDB中,因为不存在连接参数CLIENT_FOUND_ROWS(设置之后返回匹配行数而不是影响行数),不受此参数的影响,统一返回影响行数,MySQL受此参数影响。 GaussDB中INSERT ON DUPLICATE
字符串数据类型 表1 字符串数据类型 MySQL数据库 GaussDB数据库 差异 CHAR(M) 支持,存在差异 输入格式:输入二进制或十六进制字符串时,GaussDB输出为十六进制,MySQL中根据ASCII码表转义,无法转义的输出为空。 VARCHAR(M) 支持,存在差异
GaussDB无引号标识符中不支持以美元符号($)开头,MySQL无引号标识符中支持。 GaussDB无引号标识符中的支持大小写敏感的数据库对象。 GaussDB标识符支持U+0080~U+00FF扩展字符,MySQL标识符支持U+0080~U+FFFF的扩展字符。 无引号标识
GaussDB无引号标识符中不支持以美元符号($)开头,MySQL无引号标识符中支持。 GaussDB无引号标识符中的支持大小写敏感的数据库对象。 GaussDB标识符支持U+0080~U+00FF扩展字符,MySQL标识符支持U+0080~U+FFFF的扩展字符。 无引号标识