在我的机器里msado15.dll 513k 2000-7-26,可成功插入到数据库.
而测试机器里  msado15.dll 476k 2001-5-23,程序运行到插入数据库时出错.
copy我的msado15.dll并 使用regsvr32.exe从新注册也有同样问题.程序如下:
_variant_t vNULL;
vNULL.vt=VT_ERROR;
vNULL.scode=DISP_E_PARAMNOTFOUND;
m_pCommand.CreateInstance("ADODB.Command");
m_pCommand->ActiveConnection=m_pConnection;
m_pCommand->CommandText=_bstr_t("insert into tenergydata(meter_id,datetime,za) values(")+_bstr_t(TheValue)+_bstr_t(",'"+addTime+"',"+za+")");
m_pCommand->Execute(&vNULL,&vNULL,adCmdText);//此句在测试机器上运行时出错

解决方案 »

  1.   

    版本有时候确实有问题,虽然欧也不是很了解
    楼主可以下载MDAC 2.6 或者MDAC 2.7
    在所有运行机器上的安装一次,也就是说保证版本一致
    直接复制是不行的,系统不承认
      

  2.   

    文档中心有一片非常精彩的文章,推荐!
    http://www.csdn.net/develop/Read_Article.asp?Id=14662
      

  3.   

    注意几点:
    1.把sql语句输出来,COPY 到SQL server中测试确实无误!
    2.程序打包,连同本机 MDAC 最新版本(现在 MDAC2.7)。
    3.Copy msado 1.5 不行的。
      

  4.   

    我在本机下载并安装MDAC 2.7,程序依然正常运行。
    因此可推断 不是MDAC版本的问题。另外,我连接的是oracle 数据库!
    m_pConnection->Open("Provider=MSDAORA;Data Source=E2000;User ID=E2000; Password=E2000;","","",0);
      

  5.   

    问题已经解决
    是两台机器的oracle虽然版本一样,但字符集和日期格式等不一样!!!谢谢 大家的参与!!!