首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

字符串连接的时候出现的有关问题

2012-02-12 
字符串连接的时候出现的问题CStringstrSelect_T( SelectGroupRightFROMGroupInformationWHEREGroupName

字符串连接的时候出现的问题
CString   strSelect   =   _T( "Select   GroupRight   FROM   GroupInformation   WHERE   GroupName= ");
for(   int   i=0;   i <size;   i++   )   {
if(   i==0   )   strSelect   =   strSelect   +   _T( " ' ")   +   m_gArray[i]   +   _T( " ' ");
else   strSelect   =   strSelect   +   _T( "   OR   GroupName= ' ")   +   m_gArray[i]   +   _T( " ' ");
}
但是最后得到的字符串是
Select   GroupRight   FROM   GroupInformation   WHERE   GroupName= '批量下载 '   OR   GroupName= '所有权限
最后的   '   加不上去

还有另外一个语句,sql的最后sql   后面+   _T( " ') ")   ,但是也加不上去

  m_gArray是cstringarray类型


[解决办法]
看下CString的Format方法,另外SQL语句里最好不要有中文。
[解决办法]
CString strSelect = _T( " ");
CString str = _T( "Select GroupRight FROM GroupInformation WHERE GroupName= ");
for( int i=0; i <size; i++ ) {
if( i==0 )
strSelect.Format( _T( "%s '%s ' "), str,m_gArray[i] );
else strSelect.Format( _T( "%sOR GroupName= '%s ' "), str,m_gArray[i] );
}

有几个指针相加减的尽量少用=

热点排行