自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (4)
  • 收藏
  • 关注

原创 GBase 8s Longlvarchar JDBC调用

用户可通过CREATE OPAQUE TYPE 语句创建自定义不透明类型。同时, JDBC 调用该类型时,需要添加对应的映射关系并实现部分读写方法。以数据库内置UDT类型 longlvarchar 为例,以下示例添加类型映射及完成插入及查询。longlvarchar 定义为 4 字节对齐,不能使用内置的哈希函数,LVARCHAR最大256字节(超过按CLOB处理)。

2024-04-30 13:15:23 95 2

原创 GBase8s 会话缺省参数配置

GBase 8s 内置 SPL 过程使数据库管理者在用户连接数据库或从数据库断开连接时,自动执行 SQL 和SPL 语句。只有 DBA 或用户 gbasedbt 可以创建、更改或删除这些例程。

2024-01-04 21:33:28 415

原创 对mybatis 添加 GBase 8s Ref cursor的支持

GBase 8s ref cursor mybatis

2023-12-26 22:07:07 440

原创 GBase8s 自定义聚集函数--wmconcat

CREATE AGGREGATE语句需要有关四个支持函数的实现。将一个部分结果与另一个部分的结果合并,从而允许并行执行。将部分结果转换为最终值,执行清理操作并释放资源。将单个(行)值与上一个部分结果合并。初始化计算聚合所需的数据类型。

2023-11-25 20:13:21 536

原创 GBase8s 设置 DBSPACE 存储上限

设置 DBSPACE testdbs ,如果新增chunk扩展空间,每次新建 1MB chunk;如果扩展可扩展chunk,每次扩展 1MB。

2023-11-17 21:48:35 117

原创 oracle dump表数据

为了更深入的了解内部的机制,难免需要跟踪真实的落地数据实际内容。Oracle 可通过 各类系统预定义的 events 导出如内存、日志文件头、数据文件头等信息。这些信息均在 Trace文件存放路径。简单讲解如何 DUMP 具体表数据。

2023-11-12 15:15:51 145

原创 Oracle With 递归语句改写层级查询

Oracle WITH 语句递归语法改写 START WITH CONNECT BY 层级查询

2023-05-05 15:48:22 441

原创 GBase8s 自定义大对象函数

GBase8s 自定义大对象函数 TO_CLOB,TO_CHAR(CLOB),LENGTH

2023-02-16 17:38:43 321

原创 GBase8s chunk状态PD恢复

chunk文件重命名、路径变更等误操作问题,会导致数据库服务无法找到对应文件,从而对 chunk 及 dbspaces 标记PD、ND。即使恢复数据文件到原状态,重启服务,但 rootdbs 状态信息已经更改,需要手动更新状态码,才能重新启用该chunk。

2022-12-09 18:01:13 221

原创 使 Mybatis-Plus 支持 GBase8s 的分页查询

在最新版 MP 中,已明确支持 南大通用数据库 (GBase 8s)。但是在分页查询上,绑定参数顺序不正确,需要一定调整。

2022-11-18 11:23:57 1040

原创 GBase 8s SET、LIST、MULTISET

GBase 8s 支持的COLLECTION 数据类型包括:SET、MULTISET 和 LIST。SET 是无序元素集合,每个元素值唯一。MULTISET 是无序元素集合,每个元素值可重复。LIST 是有序元素集合,每个元素值可重复。嵌套集合,指集合的元素数据类型为复杂类型(collection 或 row 类型)。使用嵌套集合,可以实现在单行单列的数据格内存储一个二维数据结构。在一定程度上,可存储 Oracle 的 嵌套表类型。

2022-11-02 18:34:04 410 1

原创 GBase 8s LBAC安全标签

基于标签的访问控制(Label-Based Access Control) 是GBase 8s强制访问控制的一种形式。LBAC可以被用户来防止未经授权的访问。简单举例,现有一个场景管理部门员工信息,需要设计LBAC,员工部门分为 部门A 部门B,员工信息需要划分为 普通、敏感。按照LBAC的定义逻辑,管理部门员工信息,需要创建一个安全策略。其次,一共有两个维度需要权限区分,部门与信息安全等级,则创建两个安全组件,即部门与信息安全等级。

2022-10-27 09:57:13 476

原创 GBase 8s JDBC 返回主键

GBase 8s 序列数据类型 SERIAL、BIGSERIAL 或 SERIAL8 存储整数数据类型的顺序整数(在插入新行时由数据库服务器自动增加)。当设置序列数据类型为主键时,该列具有自增的属性, GBase 8s JDBC可通过 STATEMENT.RETURN_GENERATED_KEYS 返回主键ID。...

2022-06-28 16:45:19 239

原创 GBase 8s 空字符串 与 NULL

GBase 8s 空字符串 与 NULL 相比较

2022-06-28 16:43:21 822

原创 GBase 8s 模糊查询

模糊查询GBase 8s 可以通过 LIKE 或 MATCHES 运算符进行模糊查询。如果下列任一为真,即符合 LIKE 或 MATCHES 条件:LIKE 或 MATCHES 关键字前面的列的值与加引号的字符串指定的模式相匹配。您可在字符串中使用通配符。LIKE 或 MATCHES 关键字前面的列的值与由跟在 LIKE 或 MATCHES 关键字之后的列指定的模式相匹配。在条件中,右边的列值作为匹配模式。LIKE 运算符支持的通配符包括通配符作用%与零个或多个字符相匹

2022-04-26 16:00:00 941

原创 GBase 8s 强制转型表达式

强制转型表达式使用 CAST 和 AS 关键字或双冒号强制转型运算符( :: )来将表达式强制转型为另一数据类型。运算符和这些关键字都调用从表达式的数据类型到指定的目标数据类型的强制转型。语法图解[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mq0qhGzd-1650959765319)(vx_images/1987717166926.png)]语法格式CAST ( expression [ :: target_data_type {:: target_data_t

2022-04-26 15:56:38 802 1

原创 GBase 8s CASE表达式

CASE表达式CASE 表达式有两种形式:通用的 CASE 表达式和线性的 CASE 表达式。在 CASE 表达式中,您必须包括至少一个 WHEN 子句。随后的 WHEN 子句和 ELSE 子句是可选的。通用 CASE 表达式通用的 CASE 表达式测试 WHEN 子句中为真的条件。如果它发现为真的条件,则它返回在 THEN 子句中指定的结果。语法图解语法格式CASE WHEN condition THEN expr | NULL { WHEN condition THEN expr | N

2022-04-26 15:51:59 1631

原创 GBase 8s 自定义 find_in_set函数

find_in_set函数GBase 8s 无内置 find_in_set 函数。mysql迁移至 GBase 8s ,如需使用此函数,可自定义实现。 GBase 8s 支持通过 C 语言或 JAVA 创建自定义例程,或是通过存储过程实现。以下自定义存储过程出自大神 liaosnet出自:https://gbasedbt.com/index.php/archives/136/create function find_in_set(str varchar(255),strlist lvarchar(1

2022-04-26 15:48:40 1249

原创 GBase 8s 数据库对象名

数据库对象名使用数据库对象名段来指定数据库对象的名称,例如列、表、视图或用户定义的例程。当看到引用数据库对象名,以下为 GBase 8s 的引用规范。语法图解语法格式[database [@dbservername]:] [ownername.] object [.object]参数说明元素描述限制语法databaseobject 驻留的数据库必须存在数据库名dbservernamedatabase 的数据库服务器必须存在,在 @后面没有空格标识符

2022-04-26 15:45:52 527

原创 GBase 8s 分析SQL

分析SQL查看 SQL 执行时间>time dbaccess store_demo sel_join.sql Database closed.real 0m1.043suser 0m0.002ssys 0m0.007s查看执行计划SET EXPLAIN ON AVOID_EXECUTE; SELECT C.CUSTOMER_NUM, C.LNAME, C.FNAME, C.PHONE, O.ORDER_DATE FROM CUSTOMER C, ORDER

2022-04-26 15:42:29 817

原创 GBase 8s 跟踪SQL

跟踪SQLSQL跟踪 是 Gbase8s 的一项 SQL指令 性能监控功能。通过配置SQL语句跟踪参数监控最近执行的SQL语句的性能提供系统里执行的每一条SQL语句的统计信息统计信息存储在可配置的环形缓冲区里缺省情况下,这个特性是关闭的可以有选择的将某些用户设置为使用这个特性可更方便的分析SQL语句从而更好的进行性能调优手动跟踪SQL跟踪在 ONCONFIG参数 : SQLTRACElevel = [off, low, med, high]ntraces = [跟踪的SQL语句的数

2022-04-26 15:38:02 444

原创 GBase 8s 包

包一个PL/SQL包由如下两部分组成:包头,包体。包头:主要是包的一些定义信息,不包含具体的代码实现部分,PL/SQL程序和其他应用程序的接口,包含子程序、变量、常量、类型、游标和异常的声明。包体:是对包规范中声明的子程序和游标的实现部分,包体的内容对于外部应用程序来说是不可见的,是对包规范的实现。语法图解示例包中变量和常量的声明SET ENVIRONMENT SQLMODE 'ORACLE';SET SERVEROUTPUT ON;CREATE PACKAGE pkg_demo

2022-04-26 15:18:40 222

原创 GBase 8s 虚拟列

虚拟列虚拟列是指使用表达式或函数进行定义的数据列。逻辑上,表的虚拟列与普通列具有相同的语法含义,但虚拟列的值并不保存在任何物理存储介质上,而是在SQL的执行过程中,根据定义虚拟列的表达式或函数进行计算而获得。语法图解语法格式<create_table> ( ... column [ datatype ] [GENERATED ALWAYS] AS ( columnn_expression ) [VIRTTUAL]

2022-04-26 15:12:12 216

原创 GBase 8s HASH 分区

HASH分区HASH分区表是按分区列的HASH计算结果来决定其分区的,而特定的分区列其HASH值是固定的,也就是说HASH分区表的数据是按分区列值来聚集的,同样的分区列肯定在同一分区。创建HASH分区语法图解语法格式HASH ( <fragment_key> {,<fragment_key>} ) ( PARTITION [ partition_name ] [ DBSPACE dbspace_name ] {, PARTITION [ part

2022-04-26 15:06:38 431

原创 GBase 8s GetHzPYCAP 函数

GBase 8s GetHzPYCAP 函数用法介绍语法格式GetHzPYCAP(expr)---参数 expr : 要转换为全拼的汉字。GetHzPYCAP 函数将汉字转换为拼音首字母。函数返回值为字符型。使用时,除汉字按顺序转换为拼音首字母外,其余字符(包括数字)都不进行转换,保留原值。转换完的拼音字符串缺省为小写。样例假定 tab1 表内容不为空,执行以下语句:SELECT GETHZPYCAP(‘汉字’) FROM tabl;返回结果为:hz...

2021-11-30 11:14:34 256

原创 GBase 8s GetHzFullPY 函数

GBase 8s GetHzFullPY 函数用法介绍语法格式GetHzFullPY(expr)---参数 expr : 要转换为全拼的汉字。GetHzFullPY 函数将汉字转换为全拼。函数返回值为字符型。使用时,除汉字按顺序转换为全拼外,其余字符(包括数字)都不进行转换,保留原值。转换完的拼音字符串缺省为小写。样例假定 tab1 表内容不为空,执行以下语句:SELECT GETHZFULLPY(‘汉字 123’) FROM tabl;返回结果为:hanzi123...

2021-11-30 11:13:16 707

原创 GBase 8s SYS_GUID 函数

GBase 8s SYS_GUID 函数用法介绍语法格式SYS_GUID()SYS_GUID 函数生成并返回一个全球唯一标识符,它由 16 个字节组成。在大多数平台,生成的标识符由主机标识符、执行函数的进程或线程标识符、和进程或线程的一个非重复的值(字节序列)。样例以下示例,用户使用 SYS_GUID() 函数获得一个全球唯一标识符。SELECT sys_guid() FROM sysmaster:sysdual;...

2021-11-30 11:11:13 561

原创 GBase 8s HEX 函数

GBase 8s HEX 函数用法介绍语法格式HEX(int_eexpression)---参数 int_expression : 您想要等同的十六进制的表达式, 您想要等同的十六进制的表达式HEX 函数返回整数表达式的十六进制编码。样例下一示例显示十六进制格式的 orders 表的列的数据类型和列长度。 对于 MONEY 和 DECIMAL 列,您可从最低的和次低的字节确定精度和范围。对于 VARCHAR 和 NVARCHAR 列,您可从最低的和次低的字节来确定最小空间和最大空间。SE

2021-11-30 11:09:28 640

原创 GBase 8s NVL2 函数

GBase 8s NVL2 函数用法介绍语法格式NVL2(expression,result-expression,else-expression)当第一个参数不为 NULL 时,返回第二个参数。如果第一个参数为 NULL,则返回第三个参数。NVL2 函数是下列代码的同义词:CASE WHEN expression IS NOT NULL THEN result-expression ELSE else-expression样例执行以下查询语句,判断 c2 列,为空返

2021-11-30 11:07:08 502

原创 GBase 8s SPL SQLCODE 函数

GBase 8s SPL SQLCODE 函数用法介绍SQLCODE 函数不用参数,但将当前 SPL 例程已执行了的最近执行的(不论静态的还是动态的)SQL 语句的 sqlca.sqlcode 值返回到它的调用上下文。仅在游标的上下文中使用 SQLCODE 。您可在 SPL 例程内的表达式中使用 SQLCODE 来标识动态游标的状态。在错误处理中以及在诸如确定查询或函数调用是否尚未返回行的上下文中,或当游标已达到了活动集的最后行时,或当 SPL 程序控制应从循环中退出时要标识其他条件,此内建的函数是有

2021-11-30 11:04:10 107

原创 GBase 8s CARDINALITY 函数

GBase 8s CARDINALITY 函数用法介绍语法格式CARDINALITY(<collection_col | collection_var>);---参数 collection_col : 现有的集合列 ---参数 collection_var : 主或程序集合变量CARDINALITY 函数返回集合列(SET、MULTISET、LIST)中元素的数目。样例假设 LIST_col LIST 列包含下列值:{3, 7, 9, 16, 0}下列 SELECT 语句返

2021-11-30 11:02:05 232

原创 GBase 8s 列转行函数 LISTAGG

GBase 8s 列转行函数 LISTAGG用法介绍语法格式LISTAGG (measure_expr [,'delimiter']) WITHIN GROUP (order_by_clause)---参数 measure_expr :需要合并多行记录的表达式---参数 delimiter : 分隔多行记录的分隔符---参数 order_by_clause : 多行记录合并时,按照该参数指定的列排序函数的返回值类型为字符型,WITHIN GROUP子句不能省略,与group by子句连用时为

2021-11-30 10:59:33 2003

原创 GBase 8s 列转行函数 WM_CONCAT_TEXT

GBase 8s 列转行函数 WM_CONCAT_TEXT用法介绍语法格式WM_CONCAT_TEXT(expr);---参数 expr:要合并为一行的数据,可以是数值型、字符型和日期型数据。WM_CONCAT_TEXT函数可以将结果集中指定列的数据合并成一行。WM_CONCAT_TEXT 函数返回值为 TEXT数据类型。转换完指定列的多条记录合并到一行,多个记录使用逗号分隔。当函数的返回值超过 16380 字节时,推荐使用该函数。样例假定 tab1 表内容不为空:SELECT col

2021-11-30 10:56:09 1998 1

原创 GBase 8s 列转行函数 WM_CONCAT

GBase 8s 列转行函数 WM_CONCAT用法介绍语法格式WM_CONCAT(expr);---参数 expr:要合并为一行的数据,可以是数值型、字符型和日期型数据。WM_CONCAT 函数可以将结果集中指定列的数据合并成一行。WM_CONCAT 函数返回值为 LVARCHAR数据类型。返回值的长度不能超过 16380字节。转换完指定列的多条记录合并到一行,多个记录使用逗号分隔。如果返回值的长度超过 16380 字节,则会截断超长的字符,保存截断后的结果。所以对于列转行函数返回值长度超

2021-11-30 10:53:49 1833 1

原创 Gbase 8s 动态SQL

静态SQL和动态SQL的概念静态 SQL静态 SQL 是我们常用的使用 SQL 语句的方式,即编写 SPL 时, SQL 语句已经编写好了。因为静态 SQL 是在编写程序时就确定了,只能使用 SQL 中的 DML 和事务控制语句,但是 DDL 语句,以及会话控制语句却不能再 SPL 中直接使用,如动态创建表或者某个不确定的操作时,这就需要动态 SQL 来实现。动态 SQL动态 SQL 是指在 SPL 编译时SQL语句是不确定的,如根据用户输入的参数的不同来执行不同的操作。编译程序对动态语句部分不进行

2021-10-28 12:37:44 474

原创 GBase 8s SQL基础语法—数据操纵语言DML

GBase 8s SQL基础语法—数据操纵语言DDL文章目录GBase 8s SQL基础语法—数据操纵语言DDL数据操纵语言语句INSERT 语句UPDATE 语句DELETE 语句MERGE 语句数据操纵语言语句INSERTUPDATEDELETEMERGE注: MERGE 可模拟 INSERT 和 DELETE 或 UPDATE。INSERT 语句使用 INSERT 语句来向表或视图内插入一个或多个新行,或向 SQL 或 GBase 8s ESQL/C 集合变量内插入一个或多个元素

2021-09-25 17:04:34 985

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除