检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
错误处理 有两种非互斥的方法可以处理嵌入式SQL程序的异常情况和告警: 使用WHENEVER命令设置回调,处理告警和错误条件。 通过sqlca获取错误或者告警的详细信息,进行相应处理。 设置回调 sqlca SQLSTATE与SQLCODE 父主题: 基于ecpg开发
JSON/JSONB函数和操作符 JSON/JSONB数据类型参考JSON/JSONB类型。 表1 JSON/JSONB通用操作符 操作符 左操作数类型 右操作数类型 返回类型 描述 示例 -> Array-json(b) int json(b) 获得array-json元素。下标不存在返回空。
表达式 GaussDB数据库兼容大部分数据库表达式。 表1 表达式 序号 Oracle数据库 GaussDB数据库 差异 1 简单表达式 支持 - 2 分析视图表达式 不支持 - 3 复合表达式 支持 - 4 case表达式 支持 - 5 列表示式 支持 - 6 cursor表达式
表达式 GaussDB数据库兼容大部分Oracle数据库表达式。 表1 表达式 序号 Oracle数据库 GaussDB数据库 差异 1 简单表达式 支持 - 2 分析视图表达式 不支持 - 3 复合表达式 支持 - 4 case表达式 支持 - 5 列表示式 支持 - 6 cursor表达式
调优流程 对慢SQL语句进行分析,通常包括以下步骤: 操作步骤 收集SQL中涉及到的所有表的统计信息。在数据库中,统计信息是规划器生成计划的源数据。没有收集统计信息或者统计信息陈旧往往会造成执行计划严重劣化,从而导致性能问题。从经验数据来看,10%左右性能问题是因为没有收集统计信息。具体请参见更新统计信息。
CREATE NODE GROUP 功能描述 创建一个新的集群节点组。 注意事项 CREATE NODE GROUP是集群管理工具封装的接口,用来实现集群管理。 该接口仅对管理员用户开放使用。 语法格式 1 2 3 CREATE NODE GROUP groupname WITH
模式匹配操作符 数据库提供了三种独立的实现模式匹配的方法:SQL LIKE操作符、SIMILAR TO操作符和POSIX-风格的正则表达式。除了这些基本的操作符外,还有一些函数可用于提取或替换匹配子串并在匹配位置分离一个串。 LIKE 描述:判断字符串是否能匹配上LIKE后的模式
SET 功能描述 用于修改运行时配置参数。 注意事项 大多数运行时参数都可以用SET在运行时设置,但有些则在服务运行过程中或会话开始之后不能修改。 语法格式 设置所处的时区。 1 SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL
SET 功能描述 用于修改运行时配置参数。 注意事项 大多数运行时参数都可以用SET在运行时设置,但有些则在服务运行过程中或会话开始之后不能修改。 语法格式 设置所处的时区。 SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL
特性约束 表1 类别 特性 是否支持 事务 Serializable。 × 在事务块中对分区表执行DDL操作。 × 可扩展性 Hashbucket。 × SQL Table sampling/物化视图/键值锁。 × 父主题: Ustore特性与规格
DROP ROW LEVEL SECURITY POLICY 功能描述 删除表上某个行访问控制策略。 注意事项 仅表的所有者或者管理员用户才能删除表的行访问控制策略。 语法格式 1 DROP [ ROW LEVEL SECURITY ] POLICY [ IF EXISTS ] policy_name
设置慢SQL管控规则的Hint 功能描述 针对想要进行执行时间/资源管控的SQL语句,设置其被标记为慢SQL的执行时间,最大执行时间,最大IOPS上限。 语法格式 1 wlmrule("time_limit,max_execute_time,max_iops") 本参数仅在en
分支语句 语法 分支语句的语法请参见图1。 图1 case_when::= when_clause子句的语法图参见图2。 图2 when_clause::= 参数说明: case_expression:变量或表达式。 when_expression:常量或者条件表达式。 statement:执行语句。
数组函数和操作符 数组操作符 = 描述:两个数组是否相等 示例: 1 2 3 4 5 openGauss=# SELECT ARRAY[1.1,2.1,3.1]::int[] = ARRAY[1,2,3] AS RESULT ; result -------- t (1 row)
执行SQL命令 嵌入式SQL命令格式为EXEC SQL [Command],在嵌入的SQL应用中可以运行GaussDB Kernel支持的常见标准SQL语句,或者ecpg提供的扩展SQL语句。当前不支持存储过程、package、匿名块、闪回等特性语法。 执行SQL语句 使用游标 事务管理
基础接口 PKG_SERVICE PKG_UTIL DBE_DESCRIBE DBE_XML 父主题: 高级包
数组函数和操作符 数组操作符 = 描述:两个数组是否相等 示例: 1 2 3 4 5 openGauss=# SELECT ARRAY[1.1,2.1,3.1]::int[] = ARRAY[1,2,3] AS RESULT ; result -------- t (1 row)
嵌入式SQL命令 ALLOCATE DESCRIPTOR CONNECT DEALLOCATE DESCRIPTOR DECLARE DESCRIBE DISCONECT EXECUTE IMMEDIATE GET DESCRIPTOR OPEN PREPARE SET AUTOCOMMIT
嵌入式SQL命令 ALLOCATE DESCRIPTOR CONNECT DEALLOCATE DESCRIPTOR DECLARE DESCRIBE DISCONECT EXECUTE IMMEDIATE GET DESCRIPTOR OPEN PREPARE SET AUTOCOMMIT
JSON/JSONB函数和操作符 JSON/JSONB数据类型参考JSON/JSONB类型,操作符参见表1、表2。 表1 JSON/JSONB通用操作符 操作符 左操作数类型 右操作数类型 返回类型 描述 示例 -> Array-json(b) int json(b) 获得array-json元素。下标不存在返回空。