GBase 8s客户端工具dbaccess的简单使用方法

概述

dbaccess 是 GBase 8s 数据库的一个命令行客户端工具,用来与 GBase 8s 数据库服务器进行交互。
只要安装了 GBase 8s 数据库,就可以在命令行启动该工具,不需要额外安装。
dbaccess可识别用户输入,将用户输入的 SQL 语句打包发送给 GBase 8s 数据库服务器执行,并接收服务器的执行结果,并按用户的要求将执行结果展示给用户。

dbaccess环境变量

环境变量 功能
DBFLTMASK 设置如何显示浮点数的小数位
DBEDIT 设置使用哪个文本编辑器
DBMONEY 设置如何显示金额数据
GL_DATE 设置如何显示日期格式
GL_DATETIME 设置如何显示日期时间格式
DBACCESS_SHOW_TIME 设置是否显示SQL的执行时间

DBFLTMASK

默认情况下,dbaccess会尽可能的显示浮点数的小数位数。
通过设置该环境变量,控制dbaccess在输出小数信息时,尽量只显示指定位数的小数。

export DBFLTMASK=3

DBEDIT

设置dbaccess中使用的操作系统文本编辑器,默认为vi。

export DBEDIT=vi

DBMONEY

GBase 8s中的money数据类型的显示。
默认情况下,会根据操作系统的本地化设置,显示货币信息。
可以通过该环境变量,设置需要显示的信息。

export DBMONEY="[front][.|,][back]"

GL_DATE

GBase 8s中的date数据类型,默认格式为月/日/年(英文)。
可以设置GL_DATE环境变量,改变DATE数据的显示格式。

export GL_DATE="%iY-%m-%d"

详见日期格式化参数表

格式化符 说明
%a 星期的短格式表示
%A 星期的完整格式表示
%b 月份的短格式表示
%B 月份的完整格式表示
%C 世纪的表示,通常是年值除以100后的整数部分
%d 天(01-31)
%D 相当于格式:%m/%d/%y
%e 天(1-31)
%h 和%b相同
%H 小时(00-24)
%iy 两位年(00-99)
%IY 四位年(0000-9999)
%m 月(01-12)
%M 分钟(00-59)
%n 换行符
%S 秒(00-59)
%t 制表符
%w 星期的数字表示(0-6)
%y 两位年(00-99),同上%iy
%Y 四位年(0000-9999),同上%IY

DBACCESS_SHOW_TIME

控制dbaccess在执行SQL时,是否显示SQL的执行时间。

export DBACCESS_SHOW_TIME=1

dbaccess运行模式

一共有四种运行模式:菜单交互、指令交互、管道交互、Bash脚本。

菜单交互

dbaccess提供了一个基于控制台的菜单,用户可以使用方向键或快捷键,选择和执行相应的功能。
直接运行dbaccess命令,即可进入菜单的交互模式。

dbaccess

指令交互

dbaccess提供了一个类似mysql或sqlplus的客户端交互模式,用户输入要执行的指令并回车,dbaccess执行用户输入的指令,并返回执行结果。
也是我们最常使用的模式。

可以通过为dbaccess提供两个参数,进入指令交互模式。

dbaccess <param1> <param2>
  • param1:提供数据库名称或-,当该参数为-时,表示未选择默认的数据库,后续可在dbaccess中,使用database <db_name>指定当前数据库。
  • param2:固定为-,表示dbaccess的输入为标准输入STDIN。

常用:

dbaccess - -

指定数据库的命令稍有差别,如选择gbasedb:

database gbasedb;

使用Ctrl+d退出命令行。

注意,如果需要上翻历史命令功能,还要其他快捷键,则需要编译安装rlwrap,这点与oracel的sqlplus类似。
安装依赖:

yum install ncurses-devel -y

安装rlwrap:

yum install rlwrap -y

验证安装:

which rlwrap

dbaccess中使用rlwrap,需要环境变量中加入

alias dbaccess='rlwrap dbaccess'

管道交互

dbaccess可以接收STDIN中的内容,做为dbaccess需要执行的指令。

echo "sql_code" | dbaccess <db_name>

例:

echo "select * from t_user;" | dbaccess gbasedb 

脚本模式

可以将SQL代码保存到文件中,将文件做为dbaccess的第二个参数,来执行文件中的SQL代码。

dbaccess <db_name> <sql_file>

例:

dbaccess - demo.sql

原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/tech/bigdata/318058.html

(0)
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

登录后才能评论