GBase 8s clob数据类型操作函数

GBase 8s clob数据类型操作函数

GBase 8s中clob数据类型的操作一般使用filetoclob,lotofile和locopy函数;

示例如下:

-- 插入文本文件到指定字段中
insert into tabclob(id, clobcol) values (1, filetoclob('/home/gbase/clob.file','client'));
-- 导出clob内容至文件
select lotofile(clobcol,'/home/gbase/clob.file.20220103','client') from tabclob;
-- 复制clob
insert into tabclob2 select 2,locopy(clobcol) from tabclob where id = 1;

阅读全文»

GBase 8s中NODEFDAC环境变量或者参数

当NODEFDAC 环境变量设置为 yes 时,在不符合 ANSI 标准的数据库中当前会话期间创建新表时,不将缺省表特权(Select、Insert、Update 和 Delete)授予 PUBLIC。此设置还会在以 所有者 方式创建新的UDR时不将对该例程的 Execute 特权授予 PUBLIC。
yes 设置是区分大小写的,并且还区分前导和尾部空格。
示例:
在环境变量中

export NODEFDAC=yes

在JDBC的URL中

NODEFDAC=yes

GBase 8s 创建数据库用户

GBase 8s默认使用操作系统用户,要创建数据库用户,按以下步骤开启用户映射创建用户:

1、开启用户映射:
root用户执行:
mkdir /etc/gbasedbt
echo "USER:daemon" > /etc/gbasedbt/allowed.surrogates

gbasedbt用户执行:
onmode -wf USERMAPPING='ADMIN'
onmode -cache surrogates
dbaccess sysuser - <<!
CREATE DEFAULT USER WITH PROPERTIES USER 'daemon';
!

2、创建用户:
dbaccess sysuser -<<!
CREATE USER testuser WITH PASSWORD "GBase123";
!

3、给用户授权(testdb):
dbaccess testdb -<<!
grant dba to testuser;
!

Linux下GO通过ODBC连接到GBase 8s数据库

GO通过ODBC方式连接到GBase 8s数据库,已知有两个插件alexbrainman/odbc和weigj/go-odbc。相对而言:alexbrainman/odbc近一年内有更新。

操作系统:CentOS 7.8 64-bit
软件需求:
GBase 8s CSDK 3.0.0
unixODBC 2.3.1(建议升级到2.3.7)

1,系统环境确认

1.1 unixODBC版本

Linux下root用户通过rpm确认unixODBC、unixODBC-devel均已经安装,如下:

[root@localhost ~]# rpm -qa unixODBC unixODBC-devel
unixODBC-devel-2.3.1-14.el7.x86_64
unixODBC-2.3.1-14.el7.x86_64



阅读全文»

Python3通过JayDeBeApi(JDBC)连接到数据库

JayDeBeApi模块可让你从Python代码连接到使用Java JDBC数据库。它为该数据库提供了 Python DB-API v2.0。

1)、确认JayDeBeApi已经安装

[root@a02 ~]# pip3 list | grep JayDeBeApi
[root@a02 ~]# pip3 install JayDeBeApi
Looking in indexes: http://mirrors.cloud.aliyuncs.com/pypi/simple/
Collecting JayDeBeApi
  Using cached http://mirrors.cloud.aliyuncs.com/pypi/packages/ff/1f/6a627c9bd7dea13235b65fce0fff987507269d41f957c578031796f70319/JayDeBeApi-1.2.3-py3-none-any.whl (26 kB)
Requirement already satisfied: JPype1 in /usr/local/lib64/python3.6/site-packages (from JayDeBeApi) (1.3.0)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.6/site-packages (from JPype1->JayDeBeApi) (4.0.1)
Installing collected packages: JayDeBeApi
Successfully installed JayDeBeApi-1.2.3

阅读全文»