Cosmetology Sale adipex Tramadol online Best car insurance Cheap aciphex Vonage Purchase soma online On line car insurance quote Zithromax City Vardenafil For online trading Porn Super bowl xliii Car and insurance Cash advance payday loan Pctools spyware doctor Ultracet Full tilt poker Cheap flights Avg Xanax weight loss Casino betting Aciphex medication California homeowner insurance Purchase adipex Buy zithromax State Herbal Phentermine Spybot Ativan Zyban Purchase viagra Tadalafil vardenafil Free online car insurance quote Term life insurance policy Cheap car insurance quote Generic cialis online Duromine (Brand Ionamin) Order soma online Bad credit personal loans Football handicappers Psychologist Medical assistants Diet pills phentermine Foreclosure Tramadol cod Tramadol on line Payday loans Adalat Cialis for sale Consolidate credit card debt Buy nexium Allegra Get out of debt Rent Refinance Buy lortab Adware Texas electric companies 
Home > Oracle RDBMS > 关于字符集的几句话

关于字符集的几句话

November 1st, 2007

1. 输入时,如果Oracle客户端字符集跟Oracle服务器端字符集设置不一样,那么输入的字符就会做字符转换,最终以服务器端的字符集存入数据库

2. 输入时,如果Oracle客户端字符集跟Oracle服务器端字符集设置一样,那么不会有任何字符转换,最终以客户端操作系统字符集(不是Oracle客户端字符集)存入数据库

3. 输出时,如果Oracle客户端字符集跟Oracle服务器端字符集设置不一样,那么输出的字符会做字符转换,如果客户端操作系统字符集能够正确解释,那么输出显示正确,否则乱码

4. 输出时,如果Oracle客户端字符集跟Oracle服务器端字符集设置一样,那么不会有任何字符转换,如果客户端操作系统字符集能够正确解释,那么输出显示正确,否则乱码

这就是为什么我们即使设置了数据库字符集是US7ASCII这样无法保存双字节的英文字符集,只要Oracle客户端也是US7ASCII,客户端的操作系统又是中文操作系统,那么仍然可以正确地存储并且显示中文的原因。

kamus Oracle RDBMS


  1. November 2nd, 2007 at 11:02 | #1

    精辟啊

  2. November 2nd, 2007 at 16:44 | #2

    不错,4语中的!

  3. 5415
    November 3rd, 2007 at 00:55 | #3

    每个字我都认识,但整篇文章我就是看不懂:(

    kamus能不能再写得通俗点?

  4. November 5th, 2007 at 11:01 | #4

    @5哥
    实在是没办法了,对于技术文章还是写不成像5哥你那篇Linux介绍样的通俗易懂。

  5. 5415
    November 6th, 2007 at 21:14 | #5

    呵呵,我现在回头看前几年的文章会觉得脸红,其实写得不好,当时还自以为是以为自己写得很棒。

  6. kissingwolf
    November 26th, 2007 at 12:17 | #6

    需要认识到并不完全是指操作系统的字符集,在Unix和类Unix中启动oracle 实例的时候是根据启动环境的字符集设置的。比如你的linux是zh_CN.UTF-8 ,你启动oracle的脚本是oracle_start.sh , 在oracle_start.sh中头部你定义了 LANG=”zh_CN.GB2312″,SUPPORTED=”zh_CN.GB2312:zh_CN:zh” , LANG ,那么在oracle的运行环境中字符集就是zh_CN.GB2312的! 其他程序可以就此推广,这也是系统大环境和程序运行小环境区别!因为其运行在独立的shell环境中!

  7. December 2nd, 2007 at 01:03 | #7

    @kissingwolf
    这一点是没错的,其实也就是环境变量的设定问题,单独设定的环境变量将会覆盖默认的环境变量

  1. No trackbacks yet.
o-o >:) >:( :D :? :-S :) :( :! *(
Proudly using Dynamic Headers by Nicasio Design