`

Sybase 中文乱码解决办法

阅读更多
解决Sybase中文问题
(http://blog.csdn.net/kingspider/)
(http://blog.sina.com.cn/u/1163490885)

1.     JDBC连接串要有字符集设置
jdbc:sybase:Tds:192.168.3.11:5000/Wfis_db?charset=cp936

2.     服务器配置成cp936
(1)    使用isql查看当前已经安装的字符集
isql -Usa -Plongtop
>use master
>go
>select id,name from syscharsets
>go
id name
--- ----------------
   0 ascii_8
   1 iso_1
   2 cp850
20 defaultml
21 thaidict
22 iso14651
24 utf8bin
25 binary
39 altnoacc
45 altdict
46 altnocsp
47 scandict
48 scannocp
50 bin_iso_1
50 bin_cp850
51 dict
52 nocase
53 nocasep
54 noaccent
55 espdict
56 espnocs
57 espnoac
59 rusnocs
64 cyrnocs
65 elldict
69 hundict
70 hunnoac
71 hunnocs
73 turknoac
74 turknocs
129 cp932bin
130 dynix
137 gb2312bn
140 cyrdict
155 turdict
161 euckscbn
163 gbpinyin
165 rusdict
179 sjisbin
192 eucjisbn
194 big5bin

(41 rows affected)
从列表中看出没有安装cp936字符集

(2)    查看当前使用的缺省字符集
>sp_configure "default char"
>go
Parameter Name                 Default     Memory Used Config Value
         Run Value   Unit                 Type
------------------------------ ----------- ----------- ------------
         ----------- -------------------- ----------
default character set id                 2           0           2
                   2 id                   static

缺省字符集的id是2,查看上面的列表,可以得知是cp850

(3)    因为上面的列表中没有安装cp936,所以就安装cp936字符集
进入目录C:\sybase\charsets\cp936
运行命令 charset -Usa -Plongtop binary.srt cp936
运行完成后,系统就安装了cp936字符集

(4)    验证是否确实安装了cp936字符集
isql -Usa -Plongtop
>use master
>go
>select id,name from syscharsets
>go
id name
--- ------------------------------
   0 ascii_8
   1 iso_1
   2 cp850
20 defaultml
21 thaidict
22 iso14651
24 utf8bin
25 binary
39 altnoacc
45 altdict
46 altnocsp
47 scandict
48 scannocp
50 bin_iso_1
50 bin_cp850
50 bin_cp936
51 dict
52 nocase
53 nocasep
54 noaccent
55 espdict
56 espnocs
57 espnoac
59 rusnocs
64 cyrnocs
65 elldict
69 hundict
70 hunnoac
71 hunnocs
73 turknoac
74 turknocs
129 cp932bin
130 dynix
137 gb2312bn
140 cyrdict
155 turdict
161 euckscbn
163 gbpinyin
165 rusdict
171 cp936
179 sjisbin
192 eucjisbn
194 big5bin

(43 rows affected)
从列表中可以发现已经安装了cp936,id是171

(5)    把系统的当前缺省字符集设置为cp936
>sp_configure "default char",171
>go
In changing the default sort order, you have also reconfigured SQL Server's
default character set.
Parameter Name                 Default     Memory Used Config Value
         Run Value   Unit                 Type
------------------------------ ----------- ----------- ------------
         ----------- -------------------- ----------
default character set id                 2           0         171
                   2 id                   static

(1 row affected)
Configuration option changed. Since the option is static, Adaptive Server must
be rebooted in order for the change to take effect.
Changing the value of 'default character set id' to '171' increases the amount
of memory ASE uses by 6 K.
(return status = 0)

(6)    重启Sybase服务,使更改生效
第一次重启,系统会对已经存在的数据进行转换,转换完成后自动停止服务,只要再次启动服务就可以了。

(7)    更改DB客户端的字符集
DBArtisan中要更改客户端的字符集为cp936才能连接cp936的服务器
通过菜单\Logfile\Options...打开对话框,选择Connection标签,
更改Client Character输入框的值为cp936。

数据库的charset修改为cp936时,使用isql按如下的方式
isql -Usa -Plongtop -Sdbserver -Jcp936
分享到:
评论

相关推荐

    Sybase安装步骤及中文乱码解决办法

    Sybase安装步骤及中文乱码解决办法 在今天的信息时代,数据库管理系统(DBMS)是企业信息化建设的核心组件之一,而Sybase是其中的一种。 Sybase是一个高性能、高可靠性、高可扩展性的关系数据库管理系统,广泛应用...

    C#连接sybase解决中文乱码办法

    本文将详细介绍如何在C#环境中连接Sybase数据库并解决查询结果中的中文乱码问题。 ### 一、背景介绍 在使用C#进行数据库操作时,可能会遇到中文乱码的情况。这主要是因为不同系统或数据库之间编码不一致导致的。...

    sybase 安装乱码解决

    ### Sybase安装过程中乱码问题解决方案 #### 一、问题背景 在安装Sybase数据库的过程中,部分用户可能会遇到界面显示乱码的问题。这种情况通常出现在非英语操作系统环境下,尤其是在中文操作系统中更为常见。本文将...

    C#连接Sybase数据库,并解决C#读取Sybase乱码的问题

    4,乱码问题:sybase使用latin1字符集的时候,c#中读取字符串会是乱码,进行如下转换就行: System.Text.Encoding.GetEncoding("gbk").GetString( System.Text.Encoding.GetEncoding("latin1").GetBytes( s );

    使用ODBC中文乱码问题.docx

    ODBC中文乱码问题解决方案 在使用ODBC对数据库进行中文字符串插入时,经常会遇到中文字符串显示乱码的问题。本文将通过对该问题的分析和解决方案,帮助读者更好地理解ODBC中文乱码问题的成因和解决方法。 一、问题...

    c# 通过ODBC 访问sybase乱码解决

    c# 通过ODBC 访问sybase乱码解决

    sybase数据库无法删除解决办法

    以下是一些可能的解决步骤和相关知识点,帮助你解决Sybase数据库无法删除的问题。 1. **检查数据库状态**:首先,确认数据库是否正在运行。如果数据库处于活动状态,它不能被删除。使用`sp_helpdb`系统存储过程来...

    dbartisan 连接sybase数据时,解决中文乱码的问题

    本文将详细介绍如何解决dbartisan连接Sybase数据库时的中文乱码问题。 首先,我们要理解这个问题的根本原因。中文乱码通常是由于字符编码不匹配导致的。在数据库系统中,每个数据库、表或字段都有其自己的字符集...

    Sybase_中文乱码处理方法.docx

    Sybase中文乱码处理方法 Sybase是美国Sybase公司推出的关系数据库管理系统,广泛应用于金融、电信、政府等行业。...Sybase中文乱码问题可以通过设置JDBC连接串字符集和服务器配置cp936字符集来解决。

    Sybase数据库更换字符集方法,解决中文乱码问题

    ### Sybase数据库更换字符集方法,解决中文乱码问题 #### 概述 在使用Sybase数据库时,可能会遇到中文显示乱码的情况。这通常是因为系统使用的字符集与实际需要处理的数据字符集不匹配所导致的。为了确保数据正确...

    解决sql anywhere 11 汉字乱码问题

    在开发基于C++ Builder的...通过以上分析和步骤,你应该能够有效地解决SQL Anywhere 11中遇到的汉字乱码问题,确保你的数据库应用能够正确处理中文数据。在实际操作中,如果遇到困难,建议查阅官方文档或寻求社区支持。

    解决连接mysql中文显示乱码

    以下是对如何解决连接MySQL时中文显示乱码问题的详细解析。 ### 解决中文显示乱码的关键知识点 #### 1. **理解字符集和编码** 字符集(Character Set)是指用于表示文字的一系列符号集合,而编码(Encoding)则是将...

    Sybase 移动计算解决方案

    【Sybase移动计算解决方案】是Sybase公司针对企业级移动应用推出的一种先进的技术框架和产品组合,旨在帮助企业利用移动设备实现高效、安全的数据管理和业务流程自动化。这一解决方案的核心目标是利用移动技术提升...

    Sybase编程中出现的错误及其解决办法

    Sybase 编程中出现的错误及其解决办法 在 SYBASE 数据库开发和维护软件的过程中,可能会出现一些错误,这些错误可能是由于 SYBASE 的内部规则引起的,导致程序设计中出现误解,达不到预期的目的。下面都是在 SYBASE...

    WIN下Sybase生僻汉字

    描述中提到的“不支持解决办法详解”是指在Sybase数据库中导入或处理包含生僻汉字的数据时,可能会遇到错误,导致数据无法正常输入或显示。 在Sybase数据库中,字符集是决定如何存储和处理文本数据的关键因素。当...

    sybase 3414 错误解决方案 附带错误日志

    总的来说,解决Sybase 3414错误需要对数据库管理系统有深入的理解,同时也需要细心地分析错误日志,找出问题的根源。在进行任何修复操作前,务必备份数据,以防止不可逆的数据损失。在实际操作中,还可能需要咨询...

    PowerBuilder5.0连接Sybase出错解决办法

    PB补丁 博文链接:https://leeleo.iteye.com/blog/365113

    sybase11.9.2中文版英文版集合.rar

    本资源“sybase11.9.2中文版英文版集合.rar”包含Sybase数据库系统的11.9.2版本的中文版和英文版,适用于不同语言环境的需求。以下是关于Sybase 11.9.2的一些核心知识点: 1. **Sybase ASE(Adaptive Server ...

Global site tag (gtag.js) - Google Analytics