sql.Format("insert into table1(birthday) values(%f)","2009-7-3");
 m_pCommand->CommandText = _bstr_t(sql);///命令字串
m_pCommand->Execute(&vNULL,&vNULL,adCmdText);
请问这样执行后,在数据库中birthday字段的值 怎么是 1900-1-3    时间怎么相差这么大

解决方案 »

  1.   

    sql.Format("insert into table1(birthday) values('%s')","2009-7-3 00:00:00");
    m_pCommand->CommandText = _bstr_t(sql);///命令字串 
    m_pCommand->Execute(&vNULL,&vNULL,adCmdText); 
    请问这样执行后,在数据库中birthday字段的值 怎么是 2009-7-5    时间怎么相差这么大
      

  2.   

    不知道你在数据库中时间字段的类型,要是data类型的,先要将字符串的转化一下,好像用TO_DATE
      

  3.   

    什么数据库?MySQL的话直接当字符串写进去,Oracle的话要用to_date函数转换
      

  4.   

    sql.Format("insert into table1(birthday) values("2009-7-5")"); 
    这样就可以了