检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
为了解决因存在视图和表依赖而无法单独修改表对象的问题,GaussDB(DWS)实现了视图的解耦与重建功能。本文重点介绍视图自动重建功能的使用场景与使用方法。 场景介绍 GaussDB(DWS)使用对象标识符(oid)来保存对象之间的引用关系,这使得视图在定义的时候就绑定了其依赖的数据库对象的oid,不管视图
在GaussDB(DWS)中创建索引期间,索引名不能与模式名一起指定。该索引将在创建索引表的模式中自动创建。 图1 输入:索引 图2 输出:索引 输入:基于CASE函数的索引 函数索引是基于列函数或表达式计算结果创建的索引。 输入 1 2 3 4 5 6 7 8 9 CREATE UNIQUE
视图是基于一个或多个表或视图的逻辑表。视图本身不含数据。 在输入中,如果表名称前没有模式名称修饰,则在输出中,会修改为用视图的模式名去修饰表。 以下为视图迁移前后的语法示例: 表名称不带模式名 图1 输入:视图中不带模式名的表tab1、tab2 表名称包含模式名 图2 输出:用视图的模式名去修饰表
boundaries_interval interval) 描述:用于给开启自动创建分区功能的表添加分区。 返回值类型:void 备注:该函数运行时,会在现有分区boundary的基础上,创建多个时间范围为boundaries_interval的新分区,直到new_part_boundary – now_time
MySQL SQL迁移 工具支持从MySQL到GaussDB(DWS)的迁移,包括模式、DML、查询、系统函数、PL/SQL等。 在LINUX中执行MySQL迁移 在Linux中执行以下命令开始迁移。用户需指定源数据库、输入和输出文件夹路径和日志路径;应用程序语言类型是SQL。
PRIVILEGES 功能描述 设置应用于将来要创建的对象的权限(不会影响现有对象的权限)。 用户只可以修改由用户本身或者用户本身所属的角色所创建的对象的默认权限,这些权限可以对全局范围设置(即数据库中创建的所有对象),也可以为指定模式下的对象设置。 查看有关数据库用户的默认权限的信息,可以查询PG_DEFAULT_ACL系统表。
PRIVILEGES 功能描述 设置应用于将来要创建的对象的权限(不会影响现有对象的权限)。 用户只可以修改由用户本身或者用户本身所属的角色所创建的对象的默认权限,这些权限可以对全局范围设置(即数据库中创建的所有对象),也可以为指定模式下的对象设置。 查看有关数据库用户的默认权限的信息,可以查询PG_DEFAULT_ACL系统表。
【建议】如果能够从业务层面补全字段值,则不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 【建议】给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 【建议】给可以显式命名的约束显式命名。除了NOT NULL和DEFAULT约束外,其他约束都可以显式命名。
同样,GaussDB(DWS)也不支持ON COMMIT DELETE ROWS。它会将其迁移为ON COMMIT PRESERVE ROWS。 以下示例为临时表迁移前后的语法: 临时表迁移前 图1 表中包含GLOBAL TEMPORARY TABLE和ON COMMIT DELETE ROWS 1 2 3 4
描述:用于将指定冷热表的分区数据刷到OBS上。返回的数值为执行该函数切换分区的个数。该函数仅8.2.1.100及以上版本支持。 参数: relname:表名(指定冷热表的表名,使用其他非冷热表的表名,并不会报错,返回值为0)。 partname:分区名(指定冷热表下的分区名)。 返回值类型:integer
创建和管理GaussDB(DWS)数据库对象 创建和管理GaussDB(DWS)数据库 创建和管理GaussDB(DWS) Schema 创建和管理GaussDB(DWS)表 选择GaussDB(DWS)表存储模型 创建和管理GaussDB(DWS)分区表 创建和管理GaussDB(DWS)索引
【建议】视图定义中尽量避免排序操作。 关联表设计 【建议】表之间的关联字段应该尽量少。 【建议】关联字段的数据类型应该保持一致。 【建议】关联字段在命名上,尽可能体现出明显的关联关系。例如,采用同样名称来命名。 父主题: GaussDB(DWS)数据库对象设计规则
boundaries_interval interval) 描述:用于给开启自动创建分区功能的表添加分区。 返回值类型:void 备注:该函数运行时,会在现有分区boundary的基础上,创建多个时间范围为boundaries_interval的新分区,直到new_part_boundary – now_time
VARCHAR2 (8) ) ON COMMIT PRESERVE ROWS ; 父主题: 模式对象
创建和管理GaussDB(DWS)数据库对象 创建和管理GaussDB(DWS)数据库 创建和管理GaussDB(DWS) Schema 选择GaussDB(DWS)表存储模型 创建和管理GaussDB(DWS)表 创建和管理GaussDB(DWS)分区表 创建和管理GaussDB(DWS)索引
GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该属性删除。 CONNECTION关键字在MySQL中用作引用外部数据源。工具暂不支持该特性的完整迁移。基于当前的临时方案,工具仅仅移除该关键字。 输入示例 1 2 3 4 5 6 7 8 9 10 CREATE
删除用户,同时会删除同名的schema。 注意事项 须使用CASCADE级联删除依赖用户的对象(除数据库外)。当删除用户的级联对象时,如果级联对象处于锁定状态,则此级联对象无法被删除,直到对象被解锁或锁定级联对象的进程被终止。 在数据库中删除用户时,如果依赖用户的对象在其他数据库中或者
pg_refresh_storage() 描述:切换所有冷热表,将符合冷热切换规则的数据由热数据切换至冷数据(OBS中)。 返回值类型:int 返回值字段: success_count int:切换成功的表个数 failed_count int:切换失败的表个数 示例: 1 2 3 4 5 SELECT * FROM
MySQL语法迁移 支持的关键词和特性 数据类型 函数和表达式 表(可选参数、操作) 索引 注释 数据库 数据操作语句(DML) 事务管理和数据库管理 父主题: DSC
程序名称命名应按照统一的命名规则进行命名。 应充分考虑程序的运行效率,包括程序的执行效率和数据库的查询、存储效率,在保证应用的同时应使用效率高的处理方法。 程序注释应详细、正确、规范。 除非应用特别需要控制commit和rollback的提交时机,否则应在存储过程结束时执行显式的commit或者rollback操作。