YQDSJ = CTime::GetCurrentTime(); 用什么把YQDSJ转化为字符型
数据库类型定义为什么类型呢

解决方案 »

  1.   

    数据库中可以定义为DateTime类型或VarChar类型,如果定义为VarChar类型
    CString DateTime;
    YQDSJ = CTime::GetCurrentTime(); 
    DateTime.Format("%04d-%02d-%02d %02d:%02d:%02d", YQDSJ.GetYear(),
               YQDSJ.GetMonth(), YQDSJ.GetDay(), YQDSJ.GetHour(), YQDSJ.GetMinute(), YQDSJ.GetSecond());
      

  2.   

    如jnxulei的方法。
    也可以用CDBVariant类型
    CDBVariant YQDSJ;
    char buf[n];
    sprintf(buf,"%d-%d-%d",YQDSJ.m_pdate->year,YQDSJ.m_pdate->month,YQDSJ.m_pdate->day);
    再将buf插入到表中
      

  3.   

    insert语句中直接CONVERT(VARCHAR(10), GETDATE(), 111)
      

  4.   

    用COleDateTime::ParseDateTime可以把字符串解析为日期类对象,然后就可以得到年月日。
      

  5.   

    你为什么不直接把CTime类型转化为time_t类型,就是long类型,放到数据库中。读出后再直接转换成CTime类型就好了阿CTime::GetTime()函数转换成time_t类型,构造函数就可以根据time_t类型构造CTime对象
      

  6.   

    jnxulei(石头) 星星的回答就足够了!
      

  7.   

    http://vcp4.51.net/VC/DataBase.htm
    的第2条,虽然是ACCESS,但SQL的也可参考。