ORACLE默认字符集是al32utf8,一个中文符号为3字节长度,一般数据库采用ZHS16GBK编码,站用空间也更小。
数据库字符转换是万不得已的操作,而且很可能导致数据丢失或者出现乱码,相关步骤网络资料很多。
附:一些聊天记录
字符集啊,你去看看盖大师写的
小布的没看过,听朋友说有些讲错了?
金刚葫芦娃
我下午看了小布的,都是理论,有点晕
sunshine
讲错了,就害死人了
魂醉
是的,其实最好的就是上oracle官方去看了
有的人讲的容易误导
http://tahiti.oracle.com/
汉字都是gbk编码的
估计转化不了
sunshine
不好意思,我的LINUX没找到,我先下班了
魂醉
你字段类型应该是nvarchar的吧
ora-null
写入的时候,客户端的字符集与服务端的字符集不一致。这个问题用得着纠缠这么久?
魂醉
如果varchar你肯定都插不进去
金刚葫芦娃
是啊,varchar2插不进去
魂醉
nvarchar专门存放汉字的
魂醉
所以可以插入
金刚葫芦娃
小布说的是客户端和服务端字符集不一样才可以正常显示数据。说是Oracle会自动转换,字符集一样就转换不了,就出乱码
魂醉?
你先去看一下盖大师写的,就能比较清楚的了解了
要不去看tom的
金刚葫芦娃
恩,我现在把字符都设成一样的试试?
本文讨论了Oracle数据库中字符集的问题,特别是默认字符集al32utf8与常见使用的ZHS16GBK之间的区别。文章还涉及了不同字符集下如何正确处理中文字符,包括使用nvarchar类型来存储汉字的方法。

被折叠的 条评论
为什么被折叠?



