typedef double DATE;DATE ErrDate;strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values "
 "('%s','%s',%d)",ErrName,ErrInfo,ErrDate);可是写进库后ErrDate为-1498466368,本来想插入时间请给予指导,谢谢本来在基础类发着了,可基础类不知那位仁兄今天谁得罪他了,将我的贴子淹没在他的贴子里了,也没有帮我解答了

解决方案 »

  1.   

    strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values 
     (\'%s\',\'%s\',%d-%d-%d),ErrName,ErrInfo,ErrDate.Year...."
      

  2.   

    CString strTime;
    strTime.Format("%Y-%M-%D", year, month, day);
    Y,M,D是大写还是小写记不清了,你都试试.
      

  3.   

    然后strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values 
     (\'%s\',\'%s\',\'%s\'),ErrName,ErrInfo,strTime"
      

  4.   

    或者:
    CTime t( 1999, 3, 19 ); 
    CString s = t.Format( "%Y, %M %D" );
    strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values 
     (\'%s\',\'%s\',\'%s\'),ErrName,ErrInfo,s"
      

  5.   

    CTime t=CTime::GetCurrentTime();
    t.Format("%Y-%m-%d %H:%M:%S")
      

  6.   

    如果楼主实在要用DATE,可以先将这个DATE转换成COleDateTime类型:
    DATE ErrDate;
    ErrDate = 23333;  //这只是个试验
    COleDateTime dat(ErrDate);strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values "
     "('%s','%s','%d-%d-%d')",ErrName,ErrInfo,dat.GetYear(), dat.GetMonth(), dat.GetDay());
      

  7.   

    应该是ACCESS数据库吧!可以直接当字符串插入
      

  8.   

    typedef double DATE;DATE ErrDate;你的這個轉到日期型字段的方法錯了,上面的轉換好像都不行,你換成日期型變量做吧!
      

  9.   

    strSQL.Format("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values "
     "('%s','%s',%d)",ErrName,ErrInfo,ErrDate);我覺得sql中的insert語句錯了吧。values語句后的內容﹐必須用括號括起來。還有﹐沒有要在insert語句中指定類型吧﹐你可以先把類型轉換過來﹐再用insert語句呀。
    還有﹐就算有此用法﹐我覺得你的語句也有錯誤﹐你覺得你的引號引得正確嗎﹖
          也應該為("insert into ErrInfoData (ErrName,ErrInfo,ErrDate) values "+
     "('%s','%s',%d),"+ErrName+","+ErrInfo+","+ErrDate)吧