Vs2005+Access,AddNew 出现记录集只读?VC6下正常使用解决办法

Vs2005+Access,AddNew 出现记录集只读??VC6下正常使用
我数据库类是VC6创建的,VC6下使用正常,将该类拷贝到我的VS2005的工程下,结果就出现记录是只读的警告,无法更新数据库。源代码如下: 

CFTSODB::CFTSODB(CDatabase* pdb) 
: CRecordset(pdb) 

//{{AFX_FIELD_INIT(CFTSODB) 
m_No = 0; 
m_Lotnum = _T(""); 
m_Time = COleDateTime::GetCurrentTime(); 
m_FerruleType = _T(""); 
m_NumA = 0; 
m_NumB = 0; 
m_NumC = 0; 
m_NumD = 0; 
m_NumE = 0; 
m_nFields = 9; 
//}}AFX_FIELD_INIT 
m_nDefaultType = snapshot; 



CString CFTSODB::GetDefaultConnect() 

return _T("ODBC;DSN=FTSODB"); 


CString CFTSODB::GetDefaultSQL() 

return _T("[FerruleNum]"); 


void CFTSODB::DoFieldExchange(CFieldExchange* pFX) 

//{{AFX_FIELD_MAP(CFTSODB) 
pFX->SetFieldType(CFieldExchange::outputColumn); 
RFX_Long(pFX, _T("[No]"), m_No); 
RFX_Text(pFX, _T("[Lotnum]"), m_Lotnum); 
RFX_Date(pFX, _T("[Time]"), m_Time); 
RFX_Text(pFX, _T("[FerruleType]"), m_FerruleType); 
RFX_Long(pFX, _T("[NumA]"), m_NumA); 
RFX_Long(pFX, _T("[NumB]"), m_NumB); 
RFX_Long(pFX, _T("[NumC]"), m_NumC); 
RFX_Long(pFX, _T("[NumD]"), m_NumD); 
RFX_Long(pFX, _T("[NumE]"), m_NumE); 
//}}AFX_FIELD_MAP 


///////////////////////////////////////////////////////////////////////////// 
// CFTSODB diagnostics 

#ifdef _DEBUG 
void CFTSODB::AssertValid() const 

CRecordset::AssertValid(); 


void CFTSODB::Dump(CDumpContext& dc) const 

CRecordset::Dump(dc); 

#endif //_DEBUG 

BOOL CFTSODB::AddItem(const CString strLotnum, const COleDateTime tmTime, const CString strFerruleType, const long lNumA, const long lNumB, const long lNumC, const long lNumD, const long lNumE) 

if(IsOpen()) 

if(CanRestart()) 

Requery(); 

else 

try 

Open(); 


catch(CDBException *e) 

AfxMessageBox(_T("打开数据库失败")); 
return FALSE; 




else 

try 

Open(); 


catch(CDBException *e) 

AfxMessageBox(_T("打开数据库失败")); 
return FALSE; 



if(!IsBOF()) 

MoveLast(); 


AddNew(); 
m_Lotnum = strLotnum; 
m_Time = tmTime; 
m_NumA = lNumA; 
m_NumB = lNumB; 
m_NumC = lNumC; 
m_NumD = lNumD; 
m_NumE = lNumE; 
if(CanUpdate()) 

try 

Update(); 

catch(CDBException *e) 

AfxMessageBox(_T("数据库更新失败")); 
Close(); 
return TRUE; 


Close(); 
return TRUE; 

}

------解决方案--------------------
帮楼主顶一下
------解决方案--------------------
看看数据库或数据库所在文件夹是不是设置只读属性。