日期:2014-05-17  浏览次数:20712 次

请教C#连接informix数据库的问题
我的机器是win2003Server,informix是11.50FC8XXX
1、安装clientsdk.2.90.TC6.WIN.zip后,在C:\Program Files\IBM\Informix\Client-SDK\bin下没有IBM.Data.Informix.dll,请问可能是什么原因?在安装的过程没有错误显示(在Setnet32中设置连接信息,包括“Server Information”和“Host Information”,“Environment”里INFORMIXSERVER和INFORMIXDIR是自动产生的,设置好以后连接数据库正常)

2、从另一台机器上拷贝netf20目录到bin目录下,程序编译成功,没有错误,但是运行的时候有错误

代码是:
        private void button1_Click(object sender, EventArgs e)
        {
            IfxConnection c = null;
            try
            {
                c = new IfxConnection("Server=ontest;Host=XX.XX.XX.XX;Service=17043;Protocol=onsoctcp;Database=ddata;UID=drawuser;Password=test1122;CLIENT_LOCALE=;DB_LOCALE=;connection timeout=30;connection reset=False");
                c.Open();
                this.Text = c.Server + " " + c.ServerType + " " + c.ServerVersion;
                Clipboard.SetText(this.Text);
            }
            finally
            {
                if (c != null && c.State != ConnectionState.Closed) c.Close();
                if (c != null) c.Dispose();
                c = null;
            }
        }
    }
}


------最佳解决方案--------------------
或者OdbcConnection

OdbcConnection con = new OdbcConnection();
                con.ConnectionString = “Dsn=自定义的DSN名称;Driver={INFORMIX 3.70 64 BIT};Host=Linux服务器IP地址;Server=林;Service=Linux数据库服务名称;Protocol=onsoctcp;Database=Linux中的数据库名称;Uid=Linux中的数据库用户;Pwd=Linux中的数据库密码”;
                con.Open();

------其他解决方案--------------------
怎么没有人帮助我啊
------其他解决方案--------------------

Server=192.198.138.72;database=0836;User ID=sa;Password=123456;Persist Security Info=True;//好像只需要设置远程服务器地址,登陆用户相关信息即可

------其他解决方案--------------------
用OleDbConnection