检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
字段设计 选择数据类型 在字段设计时,基于查询效率的考虑,一般需要遵循以下原则: 尽量使用高效数据类型。 选择数值类型时,在满足业务精度的情况下,选择数据类型的优先级从高到低依次为整数、浮点数、NUMERIC。 当多个表存在逻辑关系时,表示同一含义的字段应该使用相同的数据类型。
支持,有差异。 函数返回值类型在MySQL5.7和MySQL8.0中存在差异,结合MySQL8.0的行为更为合理,因此函数返回值类型兼容MySQL8.0。 内层嵌套部分聚合函数时,部分场景返回结果MySQL5.7和MySQL8.0中存在差异,结合MySQL8.0的行为更为合理,因此函数返回值兼容MySQL8
用户与权限 概述 在M-Compatibility中,用户与权限管控相关的行为、语法整体沿用GaussDB的机制,暂不同步MySQL。 用户与权限的行为与GaussDB保持一致,具体行为说明请参见《开发指南》中的“数据库安全 > 用户及权限”章节。 用户与权限的语法在原有Gaus
SQL GaussDB数据库兼容绝大多数MySQL语法,但存在部分差异。本章节介绍GaussDB数据库当前支持的MySQL语法。 DDL DML DCL 父主题: MySQL数据库兼容性B模式
字段设计 选择数据类型 在字段设计时,基于查询效率的考虑,一般需要遵循以下原则: 尽量使用高效数据类型。 选择数值类型时,在满足业务精度的情况下,选择数据类型的优先级从高到低依次为整数、浮点数、NUMERIC。 当多个表存在逻辑关系时,表示同一含义的字段应该使用相同的数据类型。
字段设计 选择数据类型 在字段设计时,基于查询效率的考虑,一般需要遵循以下原则: 尽量使用高效数据类型。 选择数值类型时,在满足业务精度的情况下,选择数据类型的优先级从高到低依次为整数、浮点数、NUMERIC。 当多个表存在逻辑关系时,表示同一含义的字段应该使用相同的数据类型。
'\u'时,Gaussdb行为与MySQL5.7不一致。MySQL5.7存在bug,MySQL后续版本已经修复与GaussDB一致。 当开启b_format_dev_version='s2'时,GaussDB '\b' 可以与'\\b'匹配,MySQL匹配失败 模式字符串pat非
与MySQL兼容性说明 分布式版 集中式版
表内多种字符集混合使用。 utf8mb4字符集下默认字符序为utf8mb4_general_ci,与MySQL5.7保持一致。 GaussDB中utf8和utf8mb4为同一个字符集。 表1 排序规则列表 序号 MySQL数据库 GaussDB数据库 1 utf8mb4_general_ci
支持,有差异。 MySQL中可以通过GUC参数old_passwords控制生成密码的哈希方式: old_passwords的默认值为0。 old_passwords为0:表示使用MySQL 4.1 native hashing加密。 old_passwords为2:表示使用SHA-256
系统函数 GaussDB数据库兼容绝大多数MySQL的系统函数,但存在部分差异。如未列出,函数行为默认为GaussDB原生行为。 GaussDB MySQL兼容性的绝大部分系统函数目前均存在返回值与MySQL精度不一致(结果后面0的位数)的问题,这是由于部分数据类型在某些场景下仍
M-Compatibility中只支持查询,不支持修改。 7 default_transaction_read_only 设置事务的访问模式。 M-Compatibility中通过SET设置会改变会话级事务访问模式;MySQL中不支持该系统参数。 父主题: MySQL数据库兼容性M-Compatibility模式
整数溢出处理的行为。 MySQL在5.7版本,此函数入参结果最大值为2^32=4294967296,在入参或结果的period对应的月份累加值以及month_number超过uint32范围时存在整数回绕问题;在MySQL8.0中已修复此问题。GaussDB下此函数的表现与MySQL8.0版本保持一致。
表1 流程控制函数列表 序号 MySQL数据库 GaussDB数据库 差异 1 IF() 支持,有差异。 当第一个参数为TRUE且第三个参数表达式中存在隐式类型转换错误,或者第一个参数为FALSE且第二个参数表达式中存在隐式类型转换错误时,MySQL会忽略该错误,GaussDB会提示类型转换错误。
GaussDB数据库兼容绝大多数MySQL的表达式,但存在部分差异。如未列出,表达式行为默认为GaussDB原生行为。 表1 表达式 序号 MySQL数据库 GaussDB数据库 1 用户自定义变量@var_name 部分支持 2 全局变量@@var_name 部分支持 父主题: MySQL数据库兼容性B模式
的字符集,支持的范围如下。 表1 字符集列表 序号 MySQL数据库 GaussDB数据库 1 utf8mb4 支持 2 gbk 支持 3 gb18030 支持 4 utf8 支持 5 binary 支持 父主题: MySQL数据库兼容性B模式
查询语句,其查询的字段为函数、表达式而不是直接使用表中的字段,且查询的结果数据类型为INT/INT UNSIGNED,则最后返回的数据类型存在差异。在MySQL中,返回的数据类型为BIGINT/BIGINT UNSIGNED;在GaussDB中,返回的数据类型为INT/INT UNSIGNED。
按列标获取String型数据。 字段类型为整型且带有ZEROFILL属性时,GaussDB按照ZEROFILL属性要求的宽度信息用0进行补位后输出结果,MySQL直接输出结果。 String getString(String columnLabel) 按列名获取String型数据。 字段类型为整型且带有
驱动 JDBC 父主题: MySQL数据库兼容性B模式
DROP TABLE t1; DROP TABLE GaussDB分区名使用双引号(需要设置SQL_MODE为ANSI_QUOTES)或反引号是区分大小写的,MySQL不区分。 MySQL标识符长度限制为64,而GaussDB标识符长度限制为63。 GaussDB不支持可执行注释。 父主题: