var10 = pRecordset2->GetCollect("ZuiHouRiQi");通过这一行代码,我获得数据库表的一日期,格式为2007-9-17 09:35:12
请问我怎么把年,月,日,时,分,秒的具体数字提取出来,也就是分别得到2007,9,17,09,35,12这些数字在线等,解决马上结账,谢谢

解决方案 »

  1.   

    CString str3;
    if(var10.vt != VT_NULL)
    str3 = (LPCSTR)_bstr_t(var10);

    str3.Format("SELECT *  FROM Tbl_ErCiShouPiao WHERE (jinmenzhandian = 6) AND (JinMenShijian > 2007 - 4 - 12)");
    // pRecordset2->Execute(_bstr_t(str3), &RecordsetAffected2, adCmdText);
    var10 = pRecordset2->GetCollect("ZuiHouRiQi");
    具体一点的代码,所以得到的日期应该是字符串型的,还得转化下哦
      

  2.   

    int a1-a6;
    sscanf(var10,"%d-%d-%d %d:%d:%d",&a1,&a2,&a3,&a4,&a5,&a6);
    应该就会保存在a1-a6中了 你试试 
      

  3.   

    CString var= "17:23:23 34-25";
    int a1,a2,a3,a4,a5;
    sscanf(var,"%d:%d:%d %d-%d",&a1,&a2,&a3,&a4,&a5);
    CString s1;
    s1.Format("%d",a1);
    MessageBox(s1);
    我自己测试了一下 可以用的 
    对了 别忘记给我分
      

  4.   


    sscanf出什么错啊? 你的操作是对数据库和sscanf没有关系也没有冲突.
    我也是对数据库的 我怎么就没冲突呢.还有
    "所以你那样定义还是有一定问题的"---第一次见发帖人这么回答回帖人,汗.
      

  5.   

    var10 = pRecordset2->GetCollect("ZuiHouRiQi");
    通过这一行代码,我获得数据库表的一日期,格式为2007-9-17 09:35:12
    请问我怎么把年,月,日,时,分,秒的具体数字提取出来,也就是分别得到2007,9,17,09,35,12这些数字------------
    -------------------------------你的意思难道不是要把存放在var10中的"2007-9-17 09:35:12"依次存放到一个个变量中 再分别可以显示或则读取?那如果是这个意思的话 和数据库有什么关系,是不是表达没写清楚?