net通过oledb 和ibm自带连接方式,连接db2数据库出错

博主尝试使用两种不同方式连接 IBM DB2 数据库时遇到问题。一种是通过 IBM 的 OLE DB 提供程序,另一种是直接使用 OLE DB 进行连接。每种方式都出现了不同的错误,包括未知错误代码 E_UNEXPECTED 和尝试读取或写入受保护内存的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    第一种通过ibm方式连接       
DataSet ds = new DataSet();
            OleDbConnection cn = new OleDbConnection(
              "Provider=IBMDA400.1;Data Source=192.168.21.10;User ID=b4dd;" +
             "Password=b4dd;Default Collection=QIBMPP");
            cn.Open();
            OleDbDataAdapter adp = new OleDbDataAdapter("select * from qibmpp.CUSTOM", cn);
            adp.Fill(ds,"0");
            if (ds.Tables.Count > 0)
            {
                dataGridView1.Refresh();
                this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
            }
请高手帮忙看看,这个为何显示如下错误?
       “IBMDA400.1”失败,没有可用的错误消息,结果代码: E_UNEXPECTED(0x8000FFFF)。



另一种通过oledb连接
            DataSet ds = new DataSet();
            OleDbConnection Conn = new OleDbConnection("Provider=IBMDA400.DataSource.1;Data    Source=ibm.com.cn;Persist Security Info=True;User ID=sss;PASSWORD=ssss");
            Conn.Open();
            OleDbDataAdapter adp = new OleDbDataAdapter("select * from QIBMPP.CUSTOM", Conn);
            //adp.Fill(ds,"cust");
            adp.Fill(ds, "CUSTOM");
            if (ds.Tables.Count > 0)
            {
                dataGridView1.Refresh();
                this.dataGridView1.DataSource = ds.Tables[0].DefaultView;

            }
提示如下错误?
尝试读取或写入受保护的内存。这通常指示其他内存已损坏。


求高手帮忙解决?谢谢,在线等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值