bool ret = false;
char sqlbuf[1024*5] = "";
pConnection->BeginTrans();
memset(sqlbuf,0,sizeof(sqlbuf));
sprintf(sqlbuf, "insert into template(行名) values('%这里要怎么写呢,是%什么呢'), (要存入的值分别为VARCHAR2,INTERGER,DATE,CLOB类型的));
try
{
_variant_t RecordsAffected;
pConnection->Execute(_bstr_t(sqlbuf), &RecordsAffected,adCmdText);
}
catch(_com_error &e)
{
this->m_pGlobalCtrl->m_cLog->NewWrite("InsertXMLPatternToDB!´íÎóÐÅÏ¢: %s %s %s %s\r\n", e.ErrorMessage(), sqlbuf, (LPCSTR)e.Source(), (LPCSTR)(e.Description()));
pConnection->RollbackTrans();
return false;
}
pConnection->CommitTrans();
那里一般性的都是用占位符,如:f <int>
C/C++ code:
sprintf(sqlbuf, "insert into template(行名) values('%s',%d,'%s','%s')",variable1,variable2,variable3,variable4);//(要存入的值分别为VARCHAR2,INTERGER,DATE,CLOB类型的));
blob用%s不是遇0就截断,行么?