Paralleilitätsverletzung

11/07/2008 - 09:29 von Anton Hengg | Report spam
Hallo Zusammen,

ich bekomme eine Parallelitàtsverletzung bei wiederholtem DataAdapter.update

Der Grund ist, dass beim Einfügen von Datensàtzen im Datagrid nicht die
gleiche Identitywerte vergeben werden als tatsàchslich nach dem
DataAdapter.update auf dem SQL-Server.

Muss man nach dem Updaten das Dataset neu füllen oder was gibt es für
Möglichkeiten, dass nach dem Update das Datagrid bzw. die DataTable die
endgültigen Identiywerte mit bekommt.

Hoffentlich war das halbwegs verstàndlich

Gruss
Anton
 

Lesen sie die antworten

#1 Peter Götz
11/07/2008 - 09:56 | Warnen spam
Hallo Anton,

ich bekomme eine Parallelitàtsverletzung bei wiederholtem
DataAdapter.update

Der Grund ist, dass beim Einfügen von Datensàtzen im
Datagrid nicht die gleiche Identitywerte vergeben werden
als tatsàchslich nach dem DataAdapter.update auf dem
SQL-Server.



Das làsst vermuten, dass das entspr. ID-Feld bei Deinem
SQL-Server mit Autowerten befüllt wird. Beim DataGrid
(wirklich DataGrid? Oder doch eher DataGridView?)
verwendest Du möglicherweise ebenfalls Autowerte, die
natürlich nicht mit denen in der zugehörigen DB-Tabelle
übereinstimmen.

Muss man nach dem Updaten das Dataset neu füllen



Es kommt darauf an, was Du erreichen willst.
Geht es nur darum "Parallelitàtsverletzung" zu vermeiden,
dann kannst Du einfach in Deiner lokalen DataTable
negative ID-Werte verwenden (sofern in der DB-Tabelle
positive Werte verwendet werden). Dein Insert-Command
darf beim Cmd.Execute resp. DataAdapter.Update
das Feld ID nicht enthalten, es wird wg. Autowertfeld
vom SQL-Server autom. gefüllt.

oder was gibt es für Möglichkeiten, dass nach dem
Update das Datagrid bzw. die DataTable die
endgültigen Identiywerte mit bekommt.



Lies dazu mal den Artikel

.NET Framework-Entwicklerhandbuch
Abrufen von Identitàts- oder AutoWert-Werten

unter

http://msdn.microsoft.com/de-de/library/ks9f57t0(VS.80).aspx

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen