我在一个表中添加了一个字段,为char[10]类型,然后添加了一个记录,该字段对应的值为"aa",但我读取出来却是"aa     ",也就是说读取出来的数据是填充了空格后的数据,请问如何才能得到原来的值?谢谢!
   附:我使用的是CDaoDataBase,CDaoRecordSet

解决方案 »

  1.   

    在Transact-SQL语句中用RTRIM函数可以出去字符串后面的空格。或者用C++的字符处理函数!
      

  2.   

    正确,因为char[10]长度是10
    数据库中读出来就是10位,你可以利用字符处理函数将空格去掉
    CString temp;
    temp.Format("%s",pChar);//pChar为你的字符指针
    temp.TrimRight();
    nNum=temp.GetLength()+1;
    strcpy(pChar,temp.GetBuffer(0));
    strcat(pChar,"\0");
      

  3.   

    取出来的数据放到CString 的对象中,再执行一下TrimRight()就可以了
      

  4.   

    把char[10]类型改成VARCHAR[10]就可以了。