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

    第一种通过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;

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


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

你可能感兴趣的:(net通过oledb 和ibm自带连接方式,连接db2数据库出错)