我正在尝试使用 MFC 将数据添加到我的 Access 数据库中。我有两个表,在第一个表中添加一条记录后,我检索 id 并更新第二个表。第一次通过时一切正常。但是对于第二条记录表 1 rs.Update() 会引发异常 - 受限数据类型属性违规。我对两条记录使用相同的数据。表 1 的 ID 是自动生成的。
function AddData(){
rs.Open(CRecordset::snapshot, _T("SELECT * FROM Table1"));
for ( each of the objects )
{
db.BeginTrans();
rs.AddNew(); // Parent table
m_xx = xx;
.......
.....
rs.Update();
db.CommitTrans();
id = GetParentId(); // Get Id of added record
// Update the second table with id.
UpdateSecondTable ( id ) ;
}
rs.close();
}
int GetParentId(){
rs.Open(CRecordset::forwardOnly, _T("SELECT @@Identity FROM Table1"));
int id = rs.GetFieldValue();
return id;
}
提前致谢。