400-090-9964


博客 | 论坛

教学文章

GBase 8s如何新建非默认字符集的数据库

时间:2020-11-20 来源:

GBase 8s如何新建非默认字符集的数据库

很多新手在使用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 字符集了。

好,本次分享就到这里。(转自CSDN)

版权所有@北京神脑资讯技术有限公司(CUUG,中国UNIX用户协会) Copyright 2017 ALL Rights Reserved 京ICP备11008061号 京公网110108006275号

CUUG旗下网站:www.cuug.com.cn www.cuug.com oracle.cuug.com bbs.cuug.com bd.cuug.com

电话:010-59426307 010-59426319 邮政编码:100089

海淀校区:北京市海淀区紫竹院路88号紫竹花园4号楼D座703(CUUG)