检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
储的数据可能不一致,导致最后交换的数据也可能不一致。 MySQL的分区表不支持外键,普通表包含外键或其他表引用普通表的外键,则无法进行分区和普通表数据的交换;GaussDB的分区表支持外键,在两个表的外键约束一致时,则可进行分区和普通表数据的交换,GaussDB的分区表不带外键,
INTO根据查询结果创建一个新表,MySQL不支持。 GaussDB的SELECT INTO语法不支持将多个查询进行集合运算后的结果作为查询结果。 REPLACE INTO语法兼容 REPLACE 时间类型初始值的差异。例如: MySQL不受严格模式和宽松模式的影响,可向表中插入时间0值,即:
行数),不受此参数的影响,统一返回影响行数,MySQL受此参数影响。 GaussDB中INSERT ON DUPLICATE KEY UPDATE中触发冲突的场景,如果冲突一条返回1,MySQL返回2。 SYSTEM_USER() 支持,存在差异 MySQL的配置文件中配置ski
JDBC JDBC接口参考 父主题: 驱动
EXT等)时,GaussDB对应的返回值类型为TEXT。 当该函数入参含有NULL且在WHERE关键字之后调用,返回结果与MySQL 5.7不一致,此处为MySQL 5.7存在的问题,MySQL 8.0修复了该问题,目前GaussDB和MySQL 8.0保持一致。 LEAST()
数据类型 数值数据类型 日期与时间数据类型 字符串数据类型 二进制数据类型 JSON类型 数据类型支持的属性 数据类型转换 父主题: MySQL兼容性M-Compatibility模式
变量名,在MySQL中不支持。 当关键字在M-Compatibility模式下为非保留关键字(不能是函数或类型),在MySQL中为非保留关键字,其差异为:在M-Compatibility模式下不可作为函数名,在MySQL中支持。 在M-Compatibility模式下的非保留关键
NCAT最大返回长度,超长截断,目前能返回的最大长度是1073741823,小于MySQL。 默认UTF8字符集下,由于GaussDB的UTF8字符集的最大字节数与MySQL的UTF8字符集最大字节数不同。会导致创建的表结构与MySQL存在差异。 -- GaussDB: m_db=#
支持,存在差异 MySQL存储MEDIUMINT数据需要3字节。 带符号的范围是-8,388,608 ~ +8,388,607。 无符号的范围是0 ~ +16,777,215。 GaussDB映射为INT类型,存储需要4字节,通过边界值判断限制取值范围。 带符号的范围是-8,388,608
支持,存在差异 MySQL存储MEDIUMINT数据需要3字节。 带符号的范围是-8,388,608 ~ +8,388,607。 无符号的范围是0 ~ +16,777,215。 GaussDB映射为INT类型,存储需要4字节,通过边界值判断限制取值范围。 带符号的范围是-8,388,608
支持SET用户自定义变量 SET 自定义变量长度的差异。例如: MySQL自定义变量名长度没有约束。 GaussDB自定义变量名长度不超过64字节,超过部分的变量名会截断并提示告警。 SET TRANSACTION语法兼容 SET TRANSACTION MySQL可以设置当前会话(session
指向返回参数数据类型的指针。 MySQL ODBC对于任意类型均返回SQL_VARCHAR。 GaussDB ODBC的会根据内核返回的不同类型判断返回给应用相应的DataType类型。 ParameterSizePtr 指向返回参数大小的指针。 MySQL ODBC若允许ODB
FLOAT[(p)])或CAST(expr AS DOUBLE)将表达式转换为浮点类型,MySQL 5.7版本不支持此转换。 对于CAST嵌套子查询场景,如果子查询语句返回的是FLOAT类型,GaussDB返回的是准确的数值,MySQL 5.7版本返回失真数值,BINARY函数使用CAST实现,同理。
TURNING、SOME、USER 不可以作为任意数据库标识符。 GaussDB优化器与MySQL的优化器存在差异,由于优化器生成的执行计划的差异,可能导致GaussDB行为与MySQL行为的不一致,不影响业务数据结果。 例如在下述场景中,GaussDB在计算col1以及使用co
其他函数 表1 其他函数列表 MySQL数据库 GaussDB数据库 差异 DATABASE() 支持 - UUID() 支持 - UUID_SHORT() 支持 - 父主题: 系统函数
char(0))将空串转成char(0)类型。MySQL支持按长度转成对应的类型。 操作符 GaussDB能正常转成浮点型的字符串与整型值进行加、减、乘、除、求余计算,返回值是整型值,MySQL是返回浮点型。 GaussDB除以0会报错,MySQL返回null。 “~”:GaussDB返回负数,MySQL返回8字节无符号整数。
MySQL兼容性M-Compatibility模式 数据类型 系统函数 操作符 字符集 排序规则 事务 SQL 驱动
ior_compat_options中的enable_precision_decimal未设置时,PI函数的返回值精度与MySQL的有差异:MySQL中PI函数的结果仅保留四舍五入之后的小数后6位,而GaussDB的结果会保留四舍五入之后的小数后15位。 POW() 支持 - POWER()
在M-Compatibility中,用户与权限管控相关的行为、语法整体沿用GaussDB的机制,暂不同步MySQL。 用户与权限的行为与GaussDB保持一致,具体行为说明请参见《开发指南》中的“数据库安全 > 用户及权限”章节。 用户与权限的语法在原有GaussDB的基础上,裁剪了部分语法,具体语法
当GaussDB使用的字符编码是SQL_ASCII时,服务器会根据ASCII标准对字节值0~127进行解释,而字节值128~255则当作无法解析的字符。如果该函数的输入输出包含了任何非ASCII数据,数据库将无法帮助用户转换或者校验非ASCII字符,从而与MySQL的行为产生较大差异。