2
2you2me
Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序中有这样几句代码:
.... ....
sSQL = fmDM->Qry_Temp->FieldByName("RepSQL")->AsString.Trim();
sSQL = sSQL.sprintf(sSQL.c_str(),s1,s2,s3,s4);
.... ....
//程序运行到这里时,sSQL被赋值,是一个从数据库读出的很长的sql语句字符串;
//但是运行完第二句后sSQL变成了NULL,为什么?
当我把第二句直接改为:
sSQL = sSQL.sprintf(“select * .................”,s1,s2,s3,s4);
也就是把原来sSQL的值直接作为参数,运行则没有错误。这是为什么,请指教!
.... ....
sSQL = fmDM->Qry_Temp->FieldByName("RepSQL")->AsString.Trim();
sSQL = sSQL.sprintf(sSQL.c_str(),s1,s2,s3,s4);
.... ....
//程序运行到这里时,sSQL被赋值,是一个从数据库读出的很长的sql语句字符串;
//但是运行完第二句后sSQL变成了NULL,为什么?
当我把第二句直接改为:
sSQL = sSQL.sprintf(“select * .................”,s1,s2,s3,s4);
也就是把原来sSQL的值直接作为参数,运行则没有错误。这是为什么,请指教!