Обновление записи MsAccess с использованием DataAdapter
Я занимаюсь обновлением / вставкой статьи в моей базе данных Access. Это код:
string sql = string.Format("SELECT [ID], [Nome], [Data], [Completo], [Notes] FROM [Articles] WHERE [Nome]='{0}'", art.Name);
OleDbDataAdapter da = dbo.GetAdapter(sql);
DataTable dtArticolo = new DataTable("Articles");
da.Fill(dtArticolo);
DataRow drArticolo;
if (dtArticolo.Rows.Count > 0)
{
drArticolo = dtArticolo.Rows[0];
}
else
{
drArticolo = dtArticolo.NewRow();
dtArticolo.Rows.Add(drArticolo);
}
// Data
//drArticolo["ID"] = ; //? ID is PK!
drArticolo["Nome"] = art.Name;
drArticolo["Data"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
drArticolo["Completo"] = (byte)0;
drArticolo["Notes"] = !String.IsNullOrEmpty(art.Note) ? art.Note : string.Empty;
// Save
da.Update(dtArticolo);
dtArticolo.AcceptChanges();
dtArticolo.Dispose();
da.Dispose();
При "Обновлении" я получил ошибку "Обновлению требуется действительная команда InsertCommand при передаче коллекции DataRow с новыми строками". В чем дело?