【干货分享】 GBase 8s如何新建非默认字符集的数据库

文 | GBase工程技术服务

前言

很多新手在使用GBase 8s数据库过程中,由于没注意数据库的字符集,导致给表插入/加载数据时报错;或者查询表数据时出现乱码问题。

这种情况下,解决办法是只能新建数据库,并确保新建数据库的字符集跟数据的字符集一致。例如:原数据库testdb的字符集为UTF8,但是表数据为GBK字符集,导致加载导入数据不成功。需要创建一个支持GBK字符集的新数据库,在新数据库下创建表,然后导入数据。

下面就以企业管理器工具(GBaseDataStudio.exe )和dbaccess命令两种场景来说明如何新建非默认字符集的数据库。

本章内容已在如下环境上测试:
数据库版本:GBase8sV8.8_TL_3.0.0
企业管理器:GBaseDataStudio_8.5.21.0
相关关键字:GBase 8s、新建数据库、字符集

一、企业管理器操作步骤

企业管理器是GBase图形化客户端,可运行在windows或linux系统下。

新创建GB18030字符集(GBK字符集的一种表示)的数据库,使用企业管理器的操作步骤如下:
1.查看数据库的原字符集
2.断开与数据库连接,新建连接并设置字符集参数为GB18030,连接数据库
3.新建数据库

Step1:查看数据库的原字符集

在企业管理器左侧树中,找到数据库testdb并双击,右侧出现testdb窗口,查看“校对”栏目值,说明数据库的字符集为 zh_CN.57372 (表示UTF8字符集)。

在这里插入图片描述

Step2:断开与数据库连接,新建连接并设置字符集参数,并重新连接数据库

点击企业管理器中左侧树的数据连接,右键弹出菜单选择“断开连接”,则断开与数据库的连接。

在数据连接上继续右键点击“编辑连接”进行设置

在这里插入图片描述

在弹出的“连接配置”中,将“数据库/模式”设置成系统库sysmaster,系统库跟任何字符集都可以连接上。

在这里插入图片描述

单击左侧的“驱动属性”,设置字符集参数CLIENT_LOCALE 和 DB_LOCALE两个参数为 zh_cn.GB18030-2000(表示GBK字符集)

在这里插入图片描述

单击“确定“按钮完成设置。
在数据连接上继续右键,在弹出菜单中选择“连接”,则重新连接上数据库。

Step3:新建数据库

单击企业管理器中左侧树的数据库,右键弹出菜单中,选择“新建 数据库”,则弹出“创建数据库”窗口。

在这里插入图片描述

填写数据库名称、创建位置(数据库空间名称)、日志模式(带buffer缓存日志、无buffer缓存日志、无日志三选一),单击“确定”按钮即可创建数据库。

在这里插入图片描述

在此数据库下所建立的表都是GB18030 字符集了。

二、dbaccess操作步骤

dbaccess是GBase 8s自带的命令行客户端工具,运行在linux系统下。

新创建GB18030字符集(GBK字符集的一种表示)的数据库,使用dbaccess命令的操作步骤如下:
1.在环境变量中设置字符集参数
2.让环境变量生效
3.使用dbaccess 新建数据库

Step1:在环境变量中设置字符集参数

在数据库账户gbasedbt的环境配置文件 .bash_profile 中,保持原有环境变量基础上追加字符集的环境变量DB_LOCALE和CLIENT_LOCALE:
export DB_LOCALE=zh_cn.GB18030-2000
export CLIENT_LOCALE=zh_cn.GB18030-2000

在这里插入图片描述

Step2:让环境变量生效

[gbasedbt@node176 ~]$ source .bash_profile

Step3:使用dbaccess 新建数据库

使用dbaccess连接数据库,用SQL语句新建数据库db_18030
[gbasedbt@node176 ~]$ dbaccess - -
create database db_18030 in rootdbs with log;

在这里插入图片描述

数据库创建成功,在此数据库下所建立的表都是GB18030 字符集了。

好,本次分享就到这里。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值