检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
为了便于案例演示,需准备建表语句如下: --清理环境 DROP SCHEMA IF EXISTS dn_gather_test CASCADE; CREATE SCHEMA dn_gather_test; SET current_schema=dn_gather_test; --创建测试表 CREATE
指定不使用全局计划缓存的Hint 功能描述 全局计划缓存打开时,可以通过no_gpc Hint来强制单个查询语句不在全局共享计划缓存,只保留会话生命周期的计划缓存。 语法格式 1 no_gpc 本参数仅在enable_global_plancache=on时对PBE执行的语句生效。
获取发布包、依赖库和头文件 libpq依赖的库和头文件从发布包中获取,包名为GaussDB-Kernel_数据库版本号_操作系统版本号_64bit_Libpq.tar.gz或GaussDB-Kernel_数据库版本号_操作系统版本号_64bit_Libpq_Static.tar.gz。其中incl
ifdef、ifndef、else、elif和endif指令 ecpg提供了ifdef、ifndef、else、elif和endif条件编译指令。在预处理时,按照不同的条件去编译程序的不同部分,使用时,需要添加EXEC SQL前缀关键字。 示例如下: EXEC SQL ifndef
sourceURL = "jdbc:opengauss://$ip:$port/database"; Connection conn = null; try { //加载数据库驱动。 Class.forName(driver); } catch
ifdef、ifndef、else、elif和endif指令 ecpg提供了ifdef、ifndef、else、elif和endif条件编译指令。在预处理时,按照不同的条件去编译程序的不同部分,使用时,需要添加EXEC SQL前缀关键字。 父主题: 预处理指令
Materialize 算子说明 Materialize算子用于缓存子节点返回的结果,对子查询结果进行保存。对于需要重复多次扫描的子节点(特别是扫描结果每次都相同时)可以减少执行代价。 典型场景 当查询语句涉及子查询,需要多次查询同一批数据时,优化器会选择Materialize算
开启连接池 前提条件:数据源已配置成功。Linux系统请参考Linux下配置数据源;Windows系统请参考Windows下配置数据源。 在Linux和Windows环境下开启连接池,对于需要频繁建立和断开连接的中间层应用程序可显著提升性能,参考配置请参见连接池场景,示例代码如下:
PbRCR(Page base Row Consistency Read) Heap多版本管理 Heap的多版本管理是基于Tuple的行级多版本管理。 事务修改记录时,会将历史数据记录到Undo Row中。 在Tuple中的td_id上记录产生的Undo Row地址(zone_id
二进制字符串函数和操作符 字符串操作符 SQL定义了一些字符串函数,在这些函数里使用关键字而不是逗号来分隔参数。 octet_length(string) 描述:二进制字符串中的字节数。 返回值类型:int 示例: 1 2 3 4 5 gaussdb=# SELECT octet
OPEN 功能描述 打开一个游标,并将实际值选择性地绑定到游标声明中的占位符。该游标必须事先使用DECLARE命令声明过。执行OPEN命令会触发在服务器上开始执行查询。 语法格式 OPEN cursor_name OPEN cursor_name USING value [, .
二进制字符串函数和操作符 字符串操作符 SQL定义了一些字符串函数,在这些函数里使用关键字而不是逗号来分隔参数。 octet_length(string) 描述:二进制字符串中的字节数。 返回值类型:int 示例: 1 2 3 4 5 openGauss=# SELECT oct
PREPARE 功能描述 准备用于执行的语句。 语法格式 PREPARE name FROM string 参数说明 name 预备查询标识符。 string 包含预备语句的文本C字符串或者宿主变量,预备语句包含SELECT、INSERT、UPDATE或者DELETE命令之一。 示例
自适应计划选择的Hint 功能描述 对于以PBE方式执行的查询语句和DML语句,用户可以通过在查询中加choose_adaptive_gplan hint触发自适应计划选择。 语法格式 针对查询开启自适应计划选择: 1 choose_adaptive_gplan 对于非PBE方
PbRCR(Page base Row Consistency Read) Heap多版本管理 Heap的多版本管理是基于Tuple的行级多版本管理。 事务修改记录时,会将历史数据记录到Undo Row中。 在Tuple中的td_id上记录产生的Undo Row地址(zone_id
DECLARE 功能描述 声明一个游标用于迭代预备语句的结果集。该命令与SQL命令的DECLARE在语义上略有不同,后者执行查询并准备结果集以便检索,而嵌入式SQL命令只是将一个名称声明为“循环变量”并用于在查询的结果集上迭代,实际在使用OPEN命令打开游标时执行。 语法格式 DECLARE
EXECUTE IMMEDIATE 功能描述 预备并且执行动态指定的SQL语句,不检索结果行。 语法格式 EXECUTE IMMEDIATE string 参数说明 string 包含要被执行的SQL语句的C字符串或者宿主变量。 示例 使用EXECUTE IMMEDIATE和名为
SET AUTOCOMMIT 功能描述 设置当前数据库会话的自动提交行为。默认情况下,嵌入式SQL程序不自动提交,因此需要显式地发出COMMIT。这个命令可以把会话改成自动提交模式,这样每一个单独的语句都会被隐式提交。 语法格式 SET AUTOCOMMIT { = | TO }
DESCRIPTOR d; EXEC SQL DECLARE cur CURSOR FOR SELECT current_database(), 'hoge', 256; EXEC SQL OPEN cur; /* 当到达结果集末尾时,跳出循环
使用SSL方式建连报错或阻塞 问题现象 JDBC使用SSL方式建立连接时,会在客户端获取强随机数,建立连接过程中可能出现不同场景的报错信息。 场景1:如下报错: 场景2:建连阻塞。如果连接串中配置了loginTimeout后,会报Connection attempt timed out,如果不配置该参数,会一直阻塞。