有这样一段VC代码 请高手帮忙改一下

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:52:41
void CNoteDlg::OnPutList(bool bIsAdd, bool bIsTime)
{
m_wndText.SetWindowText("");
m_wndSub.EnableWindow(FALSE);
m_wndAdd.EnableWindow(FALSE);

CString strSQL;
if (nEmbody == 0)
{
strSQL.Format("SELECT * FROM SMSReveinfo WHERE Noteid NOT IN(SELECT Noteid FROM SMSReveinfo WHERE DNote"
" LIKE '%%%s%%')",theApp.strUser);
}
else if (nEmbody == 1)
{
strSQL.Format("SELECT SMSSendinfo.*,Personname FROM SMSSendinfo,Personinfo WHERE Sender = [Name] AND (Noteid"
" NOT IN(SELECT Noteid FROM SMSSendinfo WHERE DNote LIKE '%%%s%%'))",theApp.strUser);
}

CString strInst;
m_wndInst.GetLBText(m_wndInst.GetCurSel(),strInst);
if (strInst != "全局")
{
if (nEmbody == 0)
strSQL.Append("AND Institution = LTRIM(RTRIM('" + strInst + "'))");
else
{

vs2003的mfc类库的CString提供了Append 函数 你可以用2003编译
可以用+ 的方法
strSQL = strSQL+ CString(" AND Sender IN(SELECT [Name] FROM Personinfo WHERE Institution = LTRIM(RTRIM('"
+ strInst + "')))");

改成用+也不会影响程序结构啊。

直接加就可以
比如
CString str;
str="aaa";
str=str+"bbb";

你直接用加号就可以了,为什么要用Append这个方法呢?