默认分类
只是一个默认分类

【案例分析】创建存储过程报错误282: Found a quote for which there is no matching quote.

创建存储过程时第4行报282错误,该错误的原是说引号不匹配。创建的存储过程语句如下:

drop procedure if exists proc1;
create procedure proc1(out p_cursor sys_refcursor)
  define v_sqlstr lvarchar(1024);
  let v_sqlstr = "select tabid,tabname 
                  from systables
                  where tabid > 99
                    and tabtype = 'T'";
  open p_cursor for v_sqlstr;
end procedure;

阅读全文»

Docker 搭建 GBase 8s数据库服务

前置条件

1,Docker服务已经创建
2,足够的空间(GBase 8s For Docker最少需要2G的空间及1G以上的内存)

具体步骤

1,查找GBase 8s 镜像版本

[root@localhost ~]# docker search gbase8s
NAME                DESCRIPTION             STARS               OFFICIAL            AUTOMATED
liaosnet/gbase8s    GBase8sV8.7_2.0.1a2_2   1                                       

阅读全文»

GBase 8s TimeSeries(时间序列) 指南

时间序列概念

时间序列数据类型(TimeSeries data type)
元素(Element)
包装元素(Packed Element)
时间点(Time point)
起点(Origin):
时间序列实例(TimeSeries Instance)
日历(Calendar)
日历模式(Calendar pattern)
容器(Container)
规则性(Regularity)
虚表(Virtual table)

阅读全文»

[GBase 8s 教程]GBase 8s 存储过程中的异常处理

异常捕获:ON EXCEPTION

用ON EXCEPTION 语句捕获一个或一组特定的异常(即错误),用错误号 标识。
ON EXCEPTION 语句与RAISE EXCEPTION 语句一起 提供存储过程语言(SPL)的错误 捕获和恢复机制。
在一个语句块内可以定义多个 ON EXCEPTION 语句。
被捕获的异常可以是系统异常或用户定义的异常。
一旦异常被捕获, 错误状态即被清除。

阅读全文»

[GBase 8s 教程]GBase 8s 正则表达式

在前面的章节我们已经了解到GBase 8s可以通过 LIKE ...% 来进行模糊匹配。

GBase 8s 同样也支持其他正则表达式的匹配, GBase 8s中使用 REGEXP_LIKE 操作符来进行正则表达式匹配。
GBase 8s的正则表达式匹配与PHP、Perl这些脚本的类似。
注:在2.0.1a2_2和3.0.0_1版本中,该功能默认并未开放使用,需要手动开启。

阅读全文»

[GBase 8s 教程]GBase 8s LIKE 子句

在数据库中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。

WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 "name = '李雷'"。

但是有时候我们需要获取 name 字段含有 "李" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。

SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *; 使用下划线 _ 字段来表示单个字符。

阅读全文»

GBase 8s 编写使用UDR(C/Java)

GBase 8s数据库支持C和JAVA写的用户自定义例程(UDR),以扩展用户对数据库的操作的功能。
以下我们分别以简单的例子介绍C UDR和Java UDR。

C UDR

C UDR使用C语言为基础开发。
参考两个文档:《用户定义例程和数据类型开发者指南》和《DataBlade开发者工具用户指南》

1, 编写代码,示例使用简单的Hello.c

#include <stdio.h>

char *Hello(char *message )
{
    return(message);
}

main()
{
    char *message = "Hello World!";
    printf("%s\n", Hello(message));
}

阅读全文»

GBase 8s 数据库操作指南

一、数据库日常管理指南

简介:
GBase 8s数据库日常管理包括数据库模式的切换,以及服务器的监控。监控主要分为两个方面,一方面是系统级别的监控,主要包括对系统cpu的监控,以及内存的占用情况;另一方面是数据库级别的监控,包括对磁盘空间大小的监控,对逻辑日志物理日志的监控,对数据表中数据量的监控,以及表中索引层数,顺序扫描次数等等。我们可以通过命令或者sql语句的方式,完成对数据库的监控,也可以通过OAT图形化管理界面实现对GBase 8s数据库的监控。

阅读全文»

GBase 8s数据库安装常见问题解析

  GBase 8s v8.7 数据库建议安装在RHEL7或者CentOS7或者类似内核的Linux发布版本中。以下是安装过程中常见的一些问题:

1,执行ids_install安装时,报“The version file is not exist.”

解析:操作系统确少必要的unzip工具,需要安装unzip。CentOS系统中可通过yum install unzip安装。
如果安装目录下的隐藏文件 .gbase.properties 缺失,也会出现此问题。重新解压缩安装包后,再次安装。
SW64平台UOS20 1070e操作系统下,需要指定LD_LIBRARY_PATH=/usr/lib:/usr/lib64:$LD_LIBRARY_PATH。

2,执行ids_install安装时,报“No Java virtual machine could be found from your PATH environment variable. You must install a VM prior to running this program.”

解析:提示信息为无Java虚拟机,按照提示安装JRE/JDK。支持的JRE/JDK版本为1.6及以上,如CentOS自带的java-1.8.0-openjdk。

阅读全文»

B+ 索引的特点和优缺点

特点:

1、索引的高度相对较低
2、索引本身可以存储列值
3、索引本身有序

优点:

1、便于快速查询,提高数据访问的效率

缺点:

1、索引的使用容易形成热块竞争
2、会表开销---通过ROWID来找到对应的数据行
3、数据更新或插入带来的相关开销,包括叶子分裂等
4、创建索引的开销:锁表和排序