代码如下:
//写access数据库
long CSysLog::WriteAccessLog(SysLogInfo logInfo)
{
CString strSQL;
_variant_t vtEmpty;
try
{
if (blnConnectDB)
{
strSQL.Format("Insert into Syslog (USERID,SUBSYSNAME,EXECDEPT,ACTION,INFORMATION) values('%s','%s','%s','%s','%s')",logInfo.USERID,logInfo.SUBSYSNAME,logInfo.EXECDEPT,logInfo.ACTION,logInfo.INFORMATION);
m_adoAccessCN->Execute(strSQL.GetBuffer(),&vtEmpty, adCmdUnknown);
}
}
catch(_com_error &e)
{
::MessageBox(NULL,e.Description,"错误提示")
return 1;
} }
excute时掉进catch中,提示时insert into语句有错误,但我把strSQL抓出来在access中执行确没有问题,这段代码操作oracle数据库也没有问题,不知道哪里错了
//写access数据库
long CSysLog::WriteAccessLog(SysLogInfo logInfo)
{
CString strSQL;
_variant_t vtEmpty;
try
{
if (blnConnectDB)
{
strSQL.Format("Insert into Syslog (USERID,SUBSYSNAME,EXECDEPT,ACTION,INFORMATION) values('%s','%s','%s','%s','%s')",logInfo.USERID,logInfo.SUBSYSNAME,logInfo.EXECDEPT,logInfo.ACTION,logInfo.INFORMATION);
m_adoAccessCN->Execute(strSQL.GetBuffer(),&vtEmpty, adCmdUnknown);
}
}
catch(_com_error &e)
{
::MessageBox(NULL,e.Description,"错误提示")
return 1;
} }
excute时掉进catch中,提示时insert into语句有错误,但我把strSQL抓出来在access中执行确没有问题,这段代码操作oracle数据库也没有问题,不知道哪里错了
在替换符号里加"\"
另外,m_adoAccessCN是否正确创建了。