检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下的场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下的场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
row) 数据类型转换规则的差异: GaussDB数据库对于不同数据类型之间的转换规则有明确的定义: 是否支持转换:pg_cast系统表中是否定义两种类型的转换路径,没有定义则不支持。 支持转换的场景:支持任意场景转换、仅支持显式(cast表达式)转换、仅支持赋值时转换。不支持的场景
GaussDB支持使用CAST(expr AS FLOAT[(p)])或CAST(expr AS DOUBLE)将表达式转换为浮点类型,MySQL 5.7版本不支持此转换。 GaussDB不支持使用CAST(expr AS JSON)将表达式转换为JSON。 对于CAST嵌套子查询场景
数据类型支持的属性 表1 数据类型支持的属性 MySQL数据库 GaussDB数据库 NULL 支持 NOT NULL 支持 DEFAULT 支持 ON UPDATE 支持 PRIMARY KEY 支持 CHARACTER SET name 支持 COLLATE name 支持 父主题:
ZEROFILL 支持 使用CREATE TABLE AS方式建表,对VARBINARY类型的字段设置默认值,在使用SHOW CREATE TABLE、DESC或\d 查询的时候回显与MySQL存在差异,GaussDB显示为转换成十六进制后的值,而MySQL显示为原值。 示例: m_db=#
8916100448256 (1 row) 隐式类型转换差异点 GaussDB中统一平铺成小类型到小类型的转换规则,MySQL中使用小类型转大类型,大类型转小类型的转换规则。 GaussDB中隐式转换因数据类型本身差异点,输出格式存在部分行为不一致。 GaussDB中的隐式转换,BIT数据类型到字符数
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。 CONVERT() 支持,存在差异 数据类型转换规则和支持的转换类型均以GaussDB支持的转换范围和规则为准。
强制转换函数 表1 强制转换函数列表 MySQL数据库 GaussDB数据库 差异 CAST() 支持,存在差异 由于函数执行机制不同,flags无法传递给内层函数,在cast函数嵌套其他函数(如greatest、least等)时,内层函数返回小于1的值,结果与MySQL不一致。
ZEROFILL 支持 使用CREATE TABLE AS方式建表,对VARBINARY类型的字段设置默认值,在使用SHOW CREATE TABLE、DESC或\d 查询的时候回显与MySQL存在差异,GaussDB显示为转换成十六进制后的值,而MySQL显示为原值。 示例: m_db=#
row) 数据类型转换规则的差异: GaussDB数据库对于不同数据类型之间的转换规则有明确的定义: 是否支持转换:pg_cast系统表中是否定义两种类型的转换路径,没有定义则不支持。 支持转换的场景:支持任意场景转换、仅支持显式(cast表达式)转换、仅支持赋值时转换。不支持的场景
隐式游标属性不受commit\rollback操作影响。打开GUC参数set behavior_compat_options='compat_cursor'时,隐式游标属性受savepoint\commit\rollback操作影响,将重置相关属性为默认值。 属性 隐式游标属性为: SQ
隐式游标 对于非查询语句,如修改、删除操作,则由系统自动地为这些操作设置游标并创建其工作区,这些由系统隐含创建的游标称为隐式游标,隐式游标的名称为SQL,这是由系统定义的。 简介 对于隐式游标的操作,如定义、打开、取值及关闭操作,都由系统自动地完成,无需用户进行处理。用户只能通过
隐式游标的相关属性,来完成相应的操作。在隐式游标的工作区中,所存放的数据是最新处理的一条SQL语句所包含的数据,与用户自定义的显式游标无关。 格式调用为: SQL% INSERT,UPDATE,DELETE,SELECT语句中不必明确定义游标。 属性 隐式游标属性为: SQL%F
隐式游标的相关属性,来完成相应的操作。在隐式游标的工作区中,所存放的数据是最新处理的一条SQL语句所包含的数据,与用户自定义的显式游标无关。 格式调用为: SQL% INSERT,UPDATE,DELETE,SELECT语句中不必明确定义游标。 属性 隐式游标属性为: SQL%F
隐式游标的相关属性,来完成相应的操作。在隐式游标的工作区中,所存放的数据是最新处理的一条SQL语句所包含的数据,与用户自定义的显式游标无关。 格式调用为: SQL% INSERT、UPDATE、DELETE和SELECT语句中不必明确定义游标。 隐式游标属性不受commit/rollback操作影响。
compat_cursor时,隐式游标跨存储过程有效。 属性 隐式游标属性为: SQL%FOUND布尔型属性:当最近一次读记录时成功返回,则值为TRUE。 SQL%NOTFOUND布尔型属性:与%FOUND相反。 SQL%ROWCOUNT数值型属性:返回已从游标中读取的记录数。
以下为GaussDB数据库MySQL兼容性MySQL模式中日期时间函数的公共说明,与MySQL行为一致。 函数入参为时间类型表达式的情况: 时间类型表达式主要包括text、datetime、date或time,但所有可以隐式转换为时间表达式的类型都可以作为入参,比如数字类型可以通过先隐式转化为text,再作为时间类型表达式生效。