检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
width=68) Output: f1, f2, f3 Remote SQL: SELECT /*+ tablescan(remote_sy) */ f1, f2, f3 FROM public.remote_tb (3 rows) db2=> SELECT * FROM
存储过程 商业规则和业务逻辑可以通过程序存储在GaussDB中,这个程序就是存储过程。 存储过程是SQL和PL/SQL的组合。存储过程使执行商业规则的代码可以从应用程序中移动到数据库。从而,代码存储一次能够被多个程序使用。 存储过程的创建及调用办法请参考CREATE PROCEDURE。
数据类型 数据类型是一组值的集合以及定义在这个值集上的一组操作。GaussDB数据库是由表的集合组成的,而各表中的列定义了该表,每一列都属于一种数据类型,GaussDB根据数据类型有相应函数对其内容进行操作,例如GaussDB可对数值型数据进行加、减、乘、除等操作。 XML类型数
1 3 (2 rows) gaussdb=# COMMIT; COMMIT 示例18:不支持存储过程中释放存储过程外部定义的保存点。 gaussdb=# CREATE OR REPLACE PROCEDURE STP_SAVEPOINT_EXAMPLE3() AS BEGIN
游标概述 为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。 当游标作为存储过程的返回值时,如果使用JDBC调用该存储过程,返回的游标将不可用。 存储过程内commit/rollback
游标的属性中%FOUND、%NOTFOUND、%ROWCOUNT在GaussDB数据库中都是访问同一个内部变量,事务和匿名块不支持多个游标同时访问。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
高级包 高级包现有两套接口,第一套为基础接口,第二套是为了提高易用性做了二次封装的接口,推荐使用第二套接口。 基础接口 二次封装接口(推荐) 父主题: 存储过程
package package是一组相关存储过程、函数、变量、常量、游标等PL/SQL程序的组合,具有面向对象的特点,可以对PL/SQL程序设计元素进行封装。package中的函数具有统一性,创建、删除、修改都统一进行。 package包含包头(Package Specification)和Package
func_add_sql(1, 3); --使用命名标记法传参。 gaussdb=# CALL func_add_sql(num1 => 1,num2 => 3); gaussdb=# CALL func_add_sql(num2 := 2, num1 := 3); --删除函数。 gaussdb=#
CHECKPOINT 功能描述 检查点(CHECKPOINT)是一个事务日志中的点,所有数据文件都在该点被更新以反映日志中的信息,所有数据文件都将被刷新到磁盘。 设置事务日志检查点。预写式日志(WAL)缺省时在事务日志中每隔一段时间放置一个检查点。可以使用gs_guc命令设置相关
CLOSE 功能描述 CLOSE释放和一个游标关联的所有资源。 注意事项 不允许对一个已关闭的游标再做任何操作。 一个不再使用的游标应该尽早关闭。 当创建游标的事务用COMMIT或ROLLBACK终止之后,每个不可保持的已打开游标都隐含关闭。 当创建游标的事务通过ROLLBACK
员角色执行,有CREATEROLE权限的角色也可以为非系统管理员角色设置注释。系统管理员可以对所有对象进行注释。 语法格式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
数据库系统概述 数据库逻辑结构图 数据查询请求处理过程 管理事务 相关概念
character(16),character(100)) AS INSERT INTO tpcds.reason_t1 VALUES($1,$2,$3); gaussdb=# EXECUTE insert_reason(52, 'AAAAAAAADDAAAAAA', 'reason 52');
调优流程 对慢SQL语句进行分析,通常包括以下步骤: 操作步骤 收集SQL中涉及到的所有表的统计信息。在数据库中,统计信息是优化器生成计划的源数据。没有收集统计信息或者统计信息陈旧往往会造成执行计划严重劣化,从而导致性能问题。从经验数据来看,10%左右性能问题是因为没有收集统计信息。具体请参见更新统计信息。
实际调优案例 案例:调整查询重写GUC参数rewrite_rule 案例:建立合适的索引 案例:增加JOIN列非空条件 案例:改建分区表 案例:改写SQL消除子查询 案例:改写SQL消除in-clause 父主题: SQL调优指南
数据库系统概述 数据库逻辑结构图 数据查询请求处理过程 管理事务 相关概念
width=68) Output: f1, f2, f3 Remote SQL: SELECT /*+ tablescan(remote_sy) */ f1, f2, f3 FROM public.remote_tb (3 rows) db2=>SELECT * FROM
附录 JDBC libpq 日志输出相关参数介绍 父主题: 应用程序开发教程
表达式 简单表达式 条件表达式 子查询表达式 数组表达式 行表达式 父主题: SQL参考