在下面的语句中,程序可以进行,但是: 
如果把下面的student表,改成teacher[StuCode,StuName,StuAddress,StuPhone]表后,程序就不能执行了,这是为什么啊?//编译能通过,但是执行的是后就出错了。另外,teacher与student在相同access文件里面 有请高手针对上面问题给于赐教,谢谢!!!! for(int   i=0;   i <300;   i++) 

strSQL.Format("INSERT   INTO   student(StuCode,StuName,StuAddress,StuPhone)   VALUES('%s','%s','%s','%s')",code,name,address,phone); 
m_pConnection-> Execute((_bstr_t)strSQL,&RecordsAffected,adCmdText);   
      
}

解决方案 »

  1.   

    student与teacher表结构,包括字段名完全一样么??
    报的什么错误?? 用了try捕获异常了么???
      

  2.   

    结构是否完全一样?
    字段名无误?
    字段类型都是文本类型?
    插入的是否重复了(如果设置了unique的话)
      

  3.   

    先确认有没有设置unique
    然后换成
    m_pConnection->   Execute((_bstr_t)strSQL,NULL,adCmdText); 试试
      

  4.   

    在这个程序里TRACE(strSQL);
    在输出的对话框里拷贝sql语句。
    打开access文件,新建一个查询,在“sql设计"下执行这段代码试试!
    如果没错,那可能就是连接被关了或者这个表在其他情况下被独占打开了