http://expert.csdn.net/Expert/topic/2213/2213608.xml?temp=.4067652

解决方案 »

  1.   

    奇怪了。我怎么没碰到这个问题呢。 acewang(龍芯*Inside!) ( ) 提供的那帖子的问题我也没遇见啊。 vs.net2002(c#) + win2kserver + sp3 + ace12.5
      

  2.   

    blackwhole(整个儿黑):
    你是怎么连接数据库的?我的是
    win2003 + vs.net2003(c#) + ase12.5 ado.net
      

  3.   

    ADO.NET啊。在程序里直接连的。先装了ACE的OLEDB驱动(我也就只装了这个,连ODBC都没装)。
    然后程序里根据配置生成连接字符串:connectText = "rovider=Sybase ASE OLE DB Provider;Server Name=192.168.0.1,4000;Initial Catalog=MyDB;User Id=sa;Password=***;";然后就是正常操作。
      

  4.   

    public static OleDbConnection GetOleDbConnection(string strOleDbConnectionString)
    {
    OleDbConnection oleDbCN = new OleDbConnection();
    oleDbCN.ConnectionString = strOleDbConnectionString; oleDbCN.Open(); return oleDbCN;
    }
      

  5.   

    呵呵,我用OleDB也没有问题,想用Sybase 12.5SDK中提供的ADO.NET,类似于SqlConnection,效率会高一些。
      

  6.   

    我以前遇到过这个问题,中文乱码的出现是在你安装sybase数据库的时候,没有选择正确的中文编码,你说你查询过编码没有问题,不知道你是怎么查询的。我当初是重新安装sybase然后把数据库倒过来,才解决的,不知道我们遇到的情况是不是一致!
      

  7.   

    编码看服务器(syconfig)和客户端(locales.dat)和连接串中(CharSet)都是指定的cp850,OleDB连接没有问题,但是AseConnection就不行。
      

  8.   

    是不是ASE ADO.NET本身有问题?
      

  9.   

    Sybase字符集中cp936和eucgb是支持双字节的汉字的,将字符集修改为cp936或eucgb再用AseConnection连接时应该没有问题了