SQLSERVER中一个表winsnmp_daycollection
该表中包含有1个数字类型为datetime的表项daytime  和1个数字类型为long的表项tcp我想把系统当前的时间 和数字100分别插入该表 使用以下代码 报错! 原因是什么?_variant_t RecordsAffected;
CTime NowTimeTemp;
NowTimeTemp = CTime::GetCurrentTime();m_pConnection->Execute("INSERT INTO winsnmp_daycollection(daytime,tcp) VALUES (+''''NowTimeTemp''''+,100)",&RecordsAffected,adCmdText);
请指点 谢谢!
数据库已经打开

解决方案 »

  1.   

    m_pConnection->Execute("INSERT INTO winsnmp_daycollection(daytime,tcp) VALUES (+''''NowTimeTemp''''+,100)",&RecordsAffected,adCmdText);
    看清楚了,"INSERT INTO winsnmp_daycollection(daytime,tcp) VALUES (+''''NowTimeTemp''''+,100)"这段是字符串!!!那么NowTimeTemp变量在这个串里就不是你想像的是个变量了,编译器把他当成一个字符串了
    正确应该是:
    CString str;
    str.Format("INSERT INTO winsnmp_daycollection(daytime,tcp) VALUES ('%s',100)",NowTimeTemp);
    m_pConnection->Execute(str,&RecordAffected,adCmdText);