Bernd M.: DataTable + Update persistieren

Beitrag lesen

Hallo,

ich habe ein Problem mit der DataTable. Und zwar erstelle ich
einen OdbcDataApater, für den ich ein SELECT-Statement definiere.
Später editiere ich Daten einzelner DataRows, die ich dann mittels
der Update-Methode des DataAdapters persistieren möchte. Allerdings
bekomme ich hier folgende Fehlermeldung:
Update requires a valid UpdateCommand when passed DataRow collection
with modified rows.
Beim Debuggen erfahre ich, dass der DataAdapter tatsächlich lediglich
ein Select-Statement zu Verfügung stellt. Doch so wie ich das verstanden
habe, sollten mir doch automatisch das zugehörige Update- und Delete-
Statement generiert werden. Warum geschieht das nicht?
In paar Foren steht, dass ich das Update-Statement manuell setzen
muss. Doch macht dann der ganze Automatismus, den den DataAdapter
eigentlich anbietet, recht wenig Sinn.

Hier mein Code:
DataTable dtbl = this.GetUserById(User.MyCBAdminID);
DataRow dr = dtbl.Rows[0];
dr[ConstDBMappings.DB_USER_NAME] = "blbblb";
dr[ConstDBMappings.DB_USER_MOBILE_NR] = "7676767676";
OpenConnection();
OdbcDataAdapter userAdapter = GetDataAdapterFor(DataAdapter.User);
userAdapter.Update(dtbl.GetChanges());
dtbl.AcceptChanges();
CloseConnection();

GetDataAdapterFor(..) sorgt dafür, dass ich den identischen
Adapter bekomme, den auch die Methode GetUserById() nutzt.

Kann mir einer hierbei vielleicht behiflich sein?

Besten Dank
 Bernd M.