wince 系统下,sqlite插入慢!?
duapy 2010-11-09 10:49:45 现在wince系统下,用sqlite插入9000条数据,启动事务的情况下,需要时间30s左右,时间太长了啊,请各位帮忙分析一下可能是什么原因啊? 代码如下:
BOOL CDataBaseOpr::AddBlackListArray(BlackList * pBlackList , unsigned long ListCount)
{
//BlackList( CARDNO CHAR(32), CARDNumber CHAR(10) )
unsigned char ASC_CARDNO[100]="\0", ASC_CARDNumber[50]="\0";
CString strCARDNO, strCARDNumber;
unsigned long i;
m_db.execDML(L"begin transaction");//开始一个事务
try
{
for(i=0; i<ListCount; i++)
{
hex_asc( (unsigned char *)pBlackList[i].CARDNO, ASC_CARDNO, 16);
hex_asc( (unsigned char *)pBlackList[i].CARDNumber, ASC_CARDNumber, 5);
strCARDNO=ASC_CARDNO;
strCARDNumber=ASC_CARDNumber;
try
{
CString SqlBuf;
SqlBuf.Format(L"insert into BlackList( CARDNO , CARDNumber ) Values('%s' , '%s')",
strCARDNO, strCARDNumber);
m_db.execDML( SqlBuf.GetBuffer( SqlBuf.GetLength() ) );
}catch(CppSQLite3Exception ex)
{
AfxMessageBox(ex.errorMessage());
return FALSE;
}
}
m_db.execDML(L"commit transaction");
}catch(CppSQLite3Exception ex)
{
m_db.execDML(L"rollback transaction");
return FALSE;
}
return TRUE;
}