检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
美元引用的字符串常量 如果在字符串序列中包含有'(单引号),那么应当将'(单引号)加倍为''(两个单引号)否则sql语句很可能无法执行。 如果字符串中包含很多单引号或者反斜杠,那么理解字符串的内容可能就会变得很苦涩,并且容易出错,因为单引号都要加倍。 为了让这种场合下的查询更具可读性,
美元引用的字符串常量 如果在字符串序列中包含有'(单引号),那么应当将'(单引号)加倍为''(两个单引号)否则sql语句很可能无法执行。 如果字符串中包含很多单引号或者反斜杠,那么理解字符串的内容可能就会变得很苦涩,并且容易出错,因为单引号都要加倍。 为了让这种场合下的查询更具可读性,
TABLE GaussDB分区名使用双引号(需要设置SQL_MODE为ANSI_QUOTES)或反引号时是区分大小写的,MySQL不区分。 MySQL标识符长度限制为64字符,而GaussDB标识符长度限制为63字节。超过标识符的长度限制后,MySql报错,GaussDB会对标识符截断并告警。
TABLE GaussDB分区名使用双引号(需要设置SQL_MODE为ANSI_QUOTES)或反引号时是区分大小写的,MySQL不区分。 MySQL标识符长度限制为64字符,而GaussDB标识符长度限制为63字节。超过标识符的长度限制后,MySql报错,GaussDB会对标识符截断并告警。
美元引用的字符串常量 如果在字符串序列中包含有'(单引号),那么应当将'(单引号)加倍为''(两个单引号)否则sql语句很可能无法执行。 如果字符串中包含很多单引号或者反斜杠,那么理解字符串的内容可能就会变得很苦涩,并且容易出错,因为单引号都要加倍。 为了让这种场合下的查询更具可读性,
美元引用的字符串常量 如果在字符串序列中包含有'(单引号),那么应当将'(单引号)加倍为''(两个单引号),否则SQL语句很可能无法执行。 如果字符串中包含很多单引号或者反斜杠,那么理解字符串的内容可能就会变得很苦涩,并且容易出错,因为单引号都要加倍。 为了让这种场合下的查询更具可读性
截断告警,MySQL不支持。 GaussDB不支持转义字符输入,不支持""双引号输入,MySQL支持。 操作符 GaussDB能正常转成浮点型的字符串与整型值进行加、减、乘、除、求余计算,返回值是整型值,MySQL是返回浮点型。 GaussDB除以0会报错,MySQL返回null。
截断告警,MySQL不支持。 GaussDB不支持转义字符输入,不支持""双引号输入,MySQL支持。 操作符 GaussDB能正常转成浮点型的字符串与整型值进行加、减、乘、除、求余计算,返回值是整型值,MySQL是返回浮点型。 GaussDB除以0会报错,MySQL返回null。
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
二进制数据类型 MySQL数据库 GaussDB数据库 差异 BINARY[(M)] 不支持 - VARBINARY(M) 不支持 - TINYBLOB 支持,存在差异 取值范围:GaussDB中该类型由BYTEA类型映射得来,长度不能超过1GB,超过长度限制后会报错。MySQL中该类型
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
有些命令以一个SQL标识的名称(比如一个表)为参数。这些参数遵循SQL语法关于双引号的规则:不带双引号的标识强制转换成小写,而双引号保护字母不进行大小写转换,并且允许在标识符中使用空白。在双引号中,成对的双引号在结果名称中分析成一个双引号。比如,FOO"BAR"BAZ解析成fooBARbaz;而"Aweird""name"解析成A
答:无法识别名称最常见的原因是创建过程中表名或者列名使用了双引号引入了大小写。使用双引号时,表名和列名(称为标识符)在存储是区分大小写的,所以在查询时必须使用双引号且大小写需要与创建时匹配。因为某些接口或应用程序在创建时会自动引入双引号,所以建议创建时统一使用小写。 示例如下: --创建表。
二进制数据类型 MySQL数据库 GaussDB数据库 差异 BINARY[(M)] 不支持 - VARBINARY(M) 不支持 - TINYBLOB 支持,存在差异 取值范围:GaussDB中该类型由BYTEA类型映射得来,长度不能超过1GB,超过长度限制后会报错。MySQL中该类型
-- 解析时匹配不到' db_mysql=# SET @'\'' = 1; db_mysql'# 双引号括起的变量名,变量名不能出现双引号,如@"""、@""""、@"\""不支持,解析时匹配不到"或解析报错,如: -- 解析报错 db_mysql=# SET @"""" = 1;
作为函数/存储过程出入参、返回值时,MySQL支持功能、GaussDB语法不报错功能不支持。 GaussDB数据库和MySQL数据库整数类型具体差异请参见表1。 表1 整数类型 MySQL数据库 GaussDB数据库 差异 BOOL 支持,存在差异 MySQL:BOOL/BOOLEAN类型实际映射为TINYINT类型。
会将参数中的“\0”字符替换成空格,与MySQL行为存在差异。如果兼容性参数m_format_behavior_compat_options中包含disable_zero_chars_conversion选项,则禁止将“\0”字符转换成空格,与MySQL行为一致。 ODBC 父主题: