检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
数据库是组织、存储和管理数据的仓库,而数据库定义主要包括:创建数据库、修改数据库属性,以及删除数据库。所涉及的SQL语句,请参考表1。 表1 数据库定义相关SQL 功能 相关SQL 创建数据库 CREATE DATABASE 修改数据库属性 ALTER DATABASE 删除数据库 DROP
EVENT 定义DATABASE LINK对象 DATABASE LINK是可以操作远程数据库对象,所涉及的SQL语句,请参考表20。 表20 DATABASE LINK对象相关SQL 功能 相关SQL 创建一个新的DATABASE LINK对象 CREATE DATABASE LINK
业务在进行自动扩展分区时,应避免同时进行分区DDL操作,避免触发死锁问题。 业务在进行分区DDL维护操作时,应尽可能避免期间同时对目标分区进行DQL/DML操作。 如果并发的DDL与DQL/DML作用目标分区有重叠,由于串行阻塞,DQL/DML既可能先于DDL发生,也可能后于DDL发生,用户应该明确知晓其可能的预期结
数据库。所涉及的SQL语句,请参考表5。 表5 数据库定义相关SQL 功能 相关SQL 创建数据库 CREATE DATABASE 修改数据库属性 ALTER DATABASE 删除数据库 DROP DATABASE 定义模式 模式是一组数据库对象的集合,主要用于控制对数据库对象
SQL DDL DML DCL 父主题: MySQL兼容性MySQL模式
test_toast; DROP TABLE 分区表merge操作 支持将分区表的分区间不同的线外存储表类型进行合并操作。 对于相同类型的线外存储分区,合并与原有逻辑保持一致,进行物理合并。 对于不同类型的线外存储分区,合并后的分区线外存储表为Enhanced Toast表,需要进行逻辑合并,性能劣于物理合并。
test_toast; DROP TABLE 分区表merge操作 支持将分区表的分区间不同的线外存储表类型进行合并操作。 对于相同类型的线外存储分区,合并与原有逻辑保持一致,进行物理合并。 对于不同类型的线外存储分区,合并后的分区线外存储表为Enhanced Toast表,需要进行逻辑合并,性能劣于物理合并。
操作符 GaussDB数据库兼容绝大多数MySQL的操作符,但存在部分差异。除特别说明外,MySQL兼容性MySQL模式中的操作符行为默认为GaussDB原生行为。 表1 操作符 MySQL数据库 GaussDB数据库 差异 安全等于(<=>) 支持 - [NOT] REGEXP
MySQL兼容性MySQL模式概述 MySQL兼容性MySQL模式主要介绍GaussDB数据库的MySQL兼容性MySQL模式(即sql_compatibility = 'MYSQL'、且设置参数b_format_version='5.7'、b_format_dev_version='s1'时)与MySQL
MySQL兼容性MySQL模式 数据类型 系统函数 操作符 字符集 排序规则 SQL 驱动
数据类型支持的属性 表1 数据类型支持的属性 MySQL数据库 GaussDB数据库 NULL 支持 NOT NULL 支持 DEFAULT 支持 ON UPDATE 支持 PRIMARY KEY 支持 CHARACTER SET name 支持 COLLATE name 支持 父主题:
SQL SQL兼容性概述 关键字 标识符 DDL DML DCL 其他语句 用户与权限 系统表和系统视图 父主题: MySQL兼容性M-Compatibility模式
整数类型 除特别说明外,MySQL兼容性MySQL模式中的数据类型精度、标度、位数大小等默认不支持用浮点型数值定义,建议使用合法的整型数值定义。 整数类型公共差异说明: 输入格式: MySQL 对于类似“asbd”、“12dd”、“12 12”等字符场景的输入,会采取截断或返回0
隔离级别。 MySQL中不支持该系统参数。 transaction_read_only 在GaussDB中是设置当前事务的访问模式。 在MySQL中是设置会话级事务的访问模式。 在GaussDB中,通过使用SET命令,只能改变当前事务的访问模式。如果想要改变会话级的访问模式,可以
法计数。和MySQL的非JSON类型入参相同。但是在JSON类型入参时,由于JSON类型未完全与MySQL兼容,此场景下会产生差异。MySQL会完整显示数字(并且当数字长度超过82时,MySQL会给出错误的结果),GaussDB依然将超长数字解析为一个double精度的值。考虑到
SQL SQL兼容性概述 关键字 标识符 DDL DML DCL 其他语句 用户与权限 系统表和系统视图 父主题: MySQL兼容性M-Compatibility模式
GaussDB的按精度输出的时间值(小数点后的值)是四舍五入的;MySQL是直接截断的。GaussDB按精度输出的时间值(小数点后的值)末尾0都不显示;MySQL会显示。GaussDB只支持输入[0,6]范围内的整型值,作为返回时间的精度,其他均报错;MySQL的精度值有效值是[0
GaussDB与MySQL的JDBC接口定义一致,均遵循业界规范,本章节主要介绍GaussDB数据库的MySQL兼容性B模式与MySQL数据库JDBC接口的行为差异。 获取结果集中的数据 ResultSet对象提供了丰富的方法,以获取结果集中的数据。获取数据常用的方法如表1所示,其他方法请参考JDK官方文档。
GaussDB数据库支持指定数据库、模式、表或列的字符集,支持的范围如下。 表1 字符集列表 MySQL数据库 GaussDB数据库 utf8mb4 支持 gbk 支持 gb18030 支持 目前GaussDB对不属于当前字符集的非法字符未执行严格的编码逻辑校验,可能导致此类非法字符成功输入。而MySQL会校验报错。
驱动 JDBC 父主题: MySQL兼容性MySQL模式