zoukankan      html  css  js  c++  java
  • oracle 10g多语言存储

    服务器端:

    数据库字符集:ZHS16GBK

    数据库国家字符集:AL16UTF16

    客户端:

    NLS_LANG:AL32UTF8

    环境变量:ORA_NCHAR_LITERAL_REPLACE =TRUE

    这样的字符集设置,改变了客户端NLS_LANG与环境变量。如果不改变任何默认设置,比如客户端NLS_LANG仍然是ZHS16GBK,也不要什么环境变量设置,那可以实现多国文字的正确存储吗?如果你使用VB.NET开发,试试下面的代码: 

    ………………

    Dim conn As New System.Data.OracleClient.OracleConnection("database conn string")

    Dim cmd As New System.Data.OracleClient.OracleCommand("insert Into mer_categ(S_merc_name ) Values(:S_merc_name)", conn)

    cmd.Parameters.Add("S_merc_name", OracleClient.OracleType.NVarChar).Value = "삼성"                    conn.Open()

    cmd.ExecuteNonQuery()

    conn.Close()

     

    ……………

    运行结果一定让你满意。为什么通过设置command参数的形式就可以直接正确地写到数据库中,后台的处理机制还是不得而知,但我的猜测是将字符用数据库国家字符集的Unicode编码直接传到Oracle Server,而不需经过字符集的任何转换。

  • 相关阅读:
    FFT-C语言
    C语言解析WAV音频文件
    图基(Tukey)检验
    方差分析中均值比较的方法
    模拟信号采样过程
    FS,FT,DFS,DTFT,DFT,FFT的联系和区别
    枚举enum类型
    样本概率统计
    宏和内联函数
    变量的生存期和存储分配
  • 原文地址:https://www.cnblogs.com/shengel/p/1337238.html
Copyright © 2011-2022 走看看