Sybase配置中文语言支持及字符集

摘要:
在windows平台上,SybaseASE15.0.7安装完成后默认语言是:英语,默认字符集为:cp850。如果生产系统中SybaseASE数据库仅考虑支持简体中文的话,则可以使用cp936或者utf8这两种字符集。selectlangid,namefrommaster..syslanguagesgo如果返回结果为1行,则说明中文语言已经成功安装了。

在windows平台上,Sybase ASE15.0.7安装完成后默认语言是:英语(us_english),默认字符集为:cp850。cp850是一个西欧字符集,虽然也能使用cp850字符集保存汉字,但是不推荐在生产环境中使用该字符集。

如果生产系统中Sybase ASE数据库仅考虑支持简体中文的话,则可以使用cp936或者utf8这两种字符集。如果需要国际化支持,那么需选择utf8字符集。

在生产环境中,需要将默认字符集由cp850调整为utf8(或者调整成支持简体中文的cp936也可以,根据项目情况而定!),将默认语言调整为中文。

备注:如果想设定ASE的默认语言为中文,必须先将默认字符集设定为utf8,才能设置默认语言为中文。否则会报错。

查看当前数据库的默认字符集:

执行:

sp_configure "default character set id"

go

查看到Run Value为:2,执行:

select id,name from master..syscharsets where id=2

go

查看到当前字符集为:cp850

将字符集由cp850或者iso_1调整为utf8有2中方法:图形界面工具和命令行工具。

1、图形界面配置字符集

菜单:开始>所有程序>Sybase>Adaptive Server Enterprise>Server Config

Sybase配置中文语言支持及字符集第1张

选择配置Adaptive Server-之后输入sa用户名和密码

Sybase配置中文语言支持及字符集第2张

Sybase配置中文语言支持及字符集第3张

在配置字符集为utf8过程中ASE服务会重启两次。有出现配置完成后,ASE主服务无法启动失败的情况,重启机器就行。

检验utf8字符集是否配置成功

在cmd下执行: isql –Usa –P –SRUSKYPC –Jcp936登录ASE数据库。

1> sp_configure "default character set id"

2> go

Parameter Name Default Memory Used

Config Value Run Value Unit

Type

------------------------------ -------------------- -----------

-------------------- -------------------- --------------------

----------

default character set id 2 0

190 190 id

static

(1 row affected)

(return status = 0)

1> select id,name from master..syscharsets where id = 190

2> go

id name

--- ------------------------------

190 utf8

(1 row affected)

1>

至此,utf8字符集修改成功!

2、用命令行工具调整字符集为utf8

检查当前ASE数据库中是否安装了utf8字符集?

select id,name from master..syscharsets

where name='utf8'

go

如果有返回结果,则证明ASE服务器已经安装了utf8字符集。utf8字符集的id一般为190。

如果未安装字符集utf8,则在cmd下执行:

cd /d %sybase%charsetsutf8

charset -Usa -P -SRUSKYPCbinary.srt utf8 (sa的密码为空,服务名称为:RUSKYPC)

反馈信息如下:

C:sybasecharsetsutf8>charset -Usa -P -SRUSKYPC binary.srt utf8

Loading file 'binary.srt'.

Found a [sortorder] section.

This is Class-1 sort order.

Finished loading the Character Set Definition.

Finished loading file 'binary.srt'.

1 sort order loaded successfully

再次检查当前ASE数据库中是否安装了utf8字符集?

select id,name from master..syscharsets

where name='utf8'

go

反馈信息如下:

1> select id,name from master..syscharsets

2> where name='utf8'

3> go

id name

--- ------------------------------

190 utf8

(1 row affected)

说明已经安装了utf8字符集。

配置默认字符集为:utf8

sp_configure “default character set id”,190

go

之后重启ASE数据库两次

检验utf8字符集是否配置成功

1> sp_configure "default character set id"

2> go

Parameter Name Default Memory Used

Config Value Run Value Unit

Type

------------------------------ -------------------- -----------

-------------------- -------------------- --------------------

----------

default character set id 2 0

190 190 id

static

(1 row affected)

(return status = 0)

1> select id,name from master..syscharsets where id = 190

2> go

id name

--- ------------------------------

190 utf8

(1 row affected)

1>

至此,utf8字符集修改成功!

============

修改数据库默认语言:

图形界面同上。

命令行界面操作如下:

在ASE服务器中安装中文语言:

cd /d %sybase%\%sybase_ase%in

langinst -Usa -P -SRUSKYPC chinese (sa的密码为空,数据库服务名为:RUSKYPC)

反馈信息为:

C:sybaseASE-15_0in>langinst -Usa -P -SRUSKYPC chinese

用isql设定默认语言为中文:

在cmd下执行: isql -Usa –P –SRUSKYPC –Jcp936 登录ASE数据库。

检查中文语言是否已经成功安装?

select langid,name from master..syslanguages

go

如果返回结果为1行,则说明中文语言已经成功安装了。

配置ASE数据库默认语言为中文:

sp_configure "default language id",1

go

验证ASE默认语言为中文

用isql登录ASE,

isql –Usa –Jcp936 (当前数据库的字符集为utf8,客户端连接时需要使用cp936,否则中文会出现乱码)

select @@language

如果返回结果为:Chinese,则表示默认语言已经修改为中文了。

修改登录账号的默认语言为中文

查看登录账号的默认语言:

sp_displaylogin sa

go

修改登录的默认语言为中文:

sp_modifylogin sa,deflanguage,chinese

go

再次检验登录账号的默认语言:

1> sp_displaylogin sa

2> go

免责声明:文章转载自《Sybase配置中文语言支持及字符集》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Result window is too large, from + size must be less than or equal to: [10000] but was [78440]. See the scroll api for a more efficient way to request large data sets数据库迁移利器:Migrator.Net下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

创建oracle数据库时,出现ORA-00922: 选项缺失或无效

sdd53HOME 新建oracle数据库时遇到ORA-00922: 选项缺失或无效的问题,如图: 原因:一般是语句的语法有问题。比如命名不对,关键字写错等等。对于非标准的命名,一般采用双引号来创建。 具体原因:就是开始的用户密码的设置不符合规则,当时并不会报出。解决办法:标识符命名规则:1、必须以字母开始。2、长度不能超过30个单字节字符。3、只能包括...

MySQL用户权限验证与管理方法详解

本文实例讲述了MySQL用户权限验证与管理方法。分享给大家供大家参考,具体如下: 一、Mysql权限分两阶段验证 1. 服务器检查是否允许连接:用户名、密码,主机地址。 2. 检查每一个请求是否有权限实施。 二、Mysql权限列表 权限 权限级别 权限说明 create 数据库、表或索引 创建数据库、表或索引权限 drop 数据库或表 删除数据...

Oracle归档日志与非归档日志的切换及路径设置

--==================== -- Oracle 归档日志 --==================== Oracle可以将联机日志文件保存到多个不同的位置,将联机日志转换为归档日志的过程称之为归档。相应的日志被称为归档日志。 一、归档日志 是联机重做日志组文件的一个副本 包含redo记录以及一个唯一的log sequence number...

最好用的数据库文档生成工具

一 前言 本文介绍一些比较流行的数据库文档生成工具,什么是数据库文档? 其实在工作中进行项目交付的时候经常用到;简单来说数据库文档就是对整个数据库设计说明的文档,比如使用了哪个数据库,每张表的字段,类型说明等,然后整理成一个设计文档,这个文档多种多样,最常见的就是word,有了数据库文档对以后的数据库维护,或者进行二次开发都很方便; 二 流行的数据库文档生...

资产管理 cmdb之ansible 获取服务器硬件、软件等信息

    cmdb抓取服务信息的方式有很多种,可以使用自动化工具saltstack、ansible、puppet,或者使用其它模块直接ssh远程连接抓取服务器信息。这里记录一下用ansible的API接口调用setup模块抓取。 实验使用两台机器 IP 系统 软件 192.168.93.137 centos6.5_x64 ansible 1.9.4...

SQLServer2008/2012 安装、添加sa用户和密码、多实例安装、修改端口, 重启生效

目录: 1、SQLServer2008 安装2、SQL Server 添加 sa 用户和密码3、navicat12 连接 SQLServer4、不同 SQL Sever 实例的管理5、"开始 -- Microsoft SQL Server 2012"菜单下没有 sql server配置管理器6、修改 sql server 访问端口号 1、SQLServer...