PB用ADO.NET的方式连接Sybase乱码

时间:2022-12-15 19:54:10
求助,
PB用ADO.NET的方式连接Sybase乱码,Sybase的字符集是iso_1的,代码如下,中文都显示为乱码,

// Profile ado_100
SQLCA.DBMS = "ADO.Net"
SQLCA.LogPass = <*********>
SQLCA.LogId = "sybdeveloper"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Namespace='Sybase.Data.AseClient',DataSource='192.168.15.100,51000',Database='test',ADORelease='1.15.325.0',PROVIDERSTRING='charset=iso_1;'"

6 个解决方案

#1


把charset改为“En_US, us_english, iso_1”试试

#2


或者别用ado.net,用odbc试试

#3


net 连接Sybase数据库的几种方法
  最近搞了个电网公司的项目。因为他们的数据库是Sybase12.5.1,所以就简单学习了一下Sybase数据库。但发现网上关于它的资料很少,我是费了好大的劲才把Sybase数据库连接和乱码给搞定了。总结一下 
  一、Net连接Sybase12.5.1数据库几种连接方式和配置

    1、ODBC 方式

      .Net连接时使用连接串 如“Driver={Sybase System 11};Srvr=xqc;database=DBData;uid=DB;pwd=11;”

      配置ODBC驱动步骤:

       a、确认Sybase12.5.1客户端安装了ODBC驱动。

       b、点击ODBC数据源管理器选择系统DSN,然后添加在弹出的对话框中选择Sybase ASE ODBC Driver 驱动点击完成,弹出Sybase ODBC详细配置窗口。

 

       c、在Sybase ODBC详细配置窗口中输入Data Source Name 、NetWork Address 、Database Name;其中Data Source Name这个是连接串中Srvr 要用的,NetWork Address 的格式为“Sybase数据库服务器的IP,端口号”,Database Name是你要访问的数据库名称。
       d、设置好了可以先测试下是否连上 点击Test Connect 然后输入用户名密码 报“连接成功!”
    2、OLEDB 方式

      .Net连接时使用连接串 如“Provider=Sybase.ASEOLEDBProvider.2;Data Source=xqc;

    User ID=DB;Password=11;charset=eucgb; Server Name=10.195.60.143; ”

      配置OLEDB驱动步骤:

       a、确认Sybase12.5.1客户端安装了OLEDB驱动。

       b、进入Sybase Configuration Manager 中添加一个OLEDB数据源。输入Data Source Name、选择Sybase ASE OLEDB Provider 驱动。Data Source Name这个是连接串中Data Source要用的

 

       c、在Sybase ASE OLEDB Provider 详细设置窗口配置Server Name、Database Name;Server Name 的格式为“Sybase数据库服务器的IP,端口号”,Database Name是你要访问的数据库名称。
       d、设置好了可以先测试下是否连上 点击Test Connect 然后输入用户名密码 报“连接成功!”    
    3、用 Sybase.Data.AseClient 连接
      .Net连接时使用连接串 如“Data Source=10.195.49.47;charset=eucgb;Port=5100;UID=DB;PWD=11"

      下载AseClient到本地,把Sybase.Data.AseClient.dll   sybdrvado11.dll sybdrvssl.dll三个文件Copy到项目bin文件夹中,并在项目中引用Sybase.Data.AseClient.dll ,现在就可以使用了。


AseConnection con=new AseConnection("Data Source=10.195.49.47;charset=eucgb;Port=5100;UID=DB;PWD=11");
AseDataAdapter da=new AseDataAdapter("select id,name from Tablename",con);
DataSet ds=new DataSet();
da.Fill(ds);

#4


不行的,要求试验ADO.NET 的,资料真少的可怜 PB用ADO.NET的方式连接Sybase乱码

#5


pb的资料确实少,mark 学习下...

#6


引用 5 楼 a78782295 的回复:
pb的资料确实少,mark 学习下...

是的哎,结贴了

#1


把charset改为“En_US, us_english, iso_1”试试

#2


或者别用ado.net,用odbc试试

#3


net 连接Sybase数据库的几种方法
  最近搞了个电网公司的项目。因为他们的数据库是Sybase12.5.1,所以就简单学习了一下Sybase数据库。但发现网上关于它的资料很少,我是费了好大的劲才把Sybase数据库连接和乱码给搞定了。总结一下 
  一、Net连接Sybase12.5.1数据库几种连接方式和配置

    1、ODBC 方式

      .Net连接时使用连接串 如“Driver={Sybase System 11};Srvr=xqc;database=DBData;uid=DB;pwd=11;”

      配置ODBC驱动步骤:

       a、确认Sybase12.5.1客户端安装了ODBC驱动。

       b、点击ODBC数据源管理器选择系统DSN,然后添加在弹出的对话框中选择Sybase ASE ODBC Driver 驱动点击完成,弹出Sybase ODBC详细配置窗口。

 

       c、在Sybase ODBC详细配置窗口中输入Data Source Name 、NetWork Address 、Database Name;其中Data Source Name这个是连接串中Srvr 要用的,NetWork Address 的格式为“Sybase数据库服务器的IP,端口号”,Database Name是你要访问的数据库名称。
       d、设置好了可以先测试下是否连上 点击Test Connect 然后输入用户名密码 报“连接成功!”
    2、OLEDB 方式

      .Net连接时使用连接串 如“Provider=Sybase.ASEOLEDBProvider.2;Data Source=xqc;

    User ID=DB;Password=11;charset=eucgb; Server Name=10.195.60.143; ”

      配置OLEDB驱动步骤:

       a、确认Sybase12.5.1客户端安装了OLEDB驱动。

       b、进入Sybase Configuration Manager 中添加一个OLEDB数据源。输入Data Source Name、选择Sybase ASE OLEDB Provider 驱动。Data Source Name这个是连接串中Data Source要用的

 

       c、在Sybase ASE OLEDB Provider 详细设置窗口配置Server Name、Database Name;Server Name 的格式为“Sybase数据库服务器的IP,端口号”,Database Name是你要访问的数据库名称。
       d、设置好了可以先测试下是否连上 点击Test Connect 然后输入用户名密码 报“连接成功!”    
    3、用 Sybase.Data.AseClient 连接
      .Net连接时使用连接串 如“Data Source=10.195.49.47;charset=eucgb;Port=5100;UID=DB;PWD=11"

      下载AseClient到本地,把Sybase.Data.AseClient.dll   sybdrvado11.dll sybdrvssl.dll三个文件Copy到项目bin文件夹中,并在项目中引用Sybase.Data.AseClient.dll ,现在就可以使用了。


AseConnection con=new AseConnection("Data Source=10.195.49.47;charset=eucgb;Port=5100;UID=DB;PWD=11");
AseDataAdapter da=new AseDataAdapter("select id,name from Tablename",con);
DataSet ds=new DataSet();
da.Fill(ds);

#4


不行的,要求试验ADO.NET 的,资料真少的可怜 PB用ADO.NET的方式连接Sybase乱码

#5


pb的资料确实少,mark 学习下...

#6


引用 5 楼 a78782295 的回复:
pb的资料确实少,mark 学习下...

是的哎,结贴了