zoukankan      html  css  js  c++  java
  • C# 使用System.Data.OleDb;避免oracle中文乱码问题

    首先,需要保证oracle客户端服务器的字符集是一样的,并且保证该字符集支持中文。你可以使用plsql查看是否乱码。

    代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.OleDb;
    
    namespace Oracle中文
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("开始连接oraclr数据库");
    
                string connstring = "Provider=MSDAORA.1;Data Source=(DESCRIPTION =(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.155)(PORT = 1521)))(CONNECT_DATA = (SID = edrsdb))) ;User Id=edrs_process;Password=scgsxxzx";
    
                OleDbConnection conn = new OleDbConnection(connstring);
                conn.Open();
    
                Console.WriteLine("oracle连接成功");
                Console.WriteLine("开始读取中文数据测试是否乱码");
                Console.WriteLine("读取软件版本管理-更新内容字段,其结果如下:");
    
                string cmd = "select GXNR from US_RJBBGL where ZJ = 'F6A4A7A7A851C8EEE040007F01004914'";
                OleDbCommand oleCmd = new OleDbCommand(cmd, conn);
                oleCmd.CommandType = System.Data.CommandType.Text;
                object oresult = oleCmd.ExecuteScalar();
    
                Console.WriteLine(oresult.ToString());
    
                Console.WriteLine("测试中文数据更改是否乱码");
    
                string updateCmd = "update US_RJBBGL set GXNR = '你好' where ZJ = 'F6A4A7A7A851C8EEE040007F01004914'";
    
                oleCmd.CommandText = updateCmd;
                oleCmd.ExecuteNonQuery();
                Console.WriteLine("数据更改已完成.");
    
                Console.Read();
            }
        }
    }
    

      

    修改链接字符串的IP、端口、用户名、密码之后运行测试效果。

  • 相关阅读:
    团队的展示以及规划
    基于上次数独基础优化,并添加GUI界面
    利用程序随机构造N个已解答的数独棋盘
    本学期高级软件工程课程的实践项目的自我目标
    本学期高级软件工程课程的实践项目的自我目标
    案列分析
    编程作业
    构建之法
    软工一
    小黄衫获奖感言
  • 原文地址:https://www.cnblogs.com/DoNetCoder/p/3658267.html
Copyright © 2011-2022 走看看