VIEW auf ein DataTables

12/01/2009 - 15:50 von Michael Kolowicz | Report spam
Ich arbeite mit einem DataSet das auf einem MSSQL-Server aufsetzt. Nun
habe ich auf dem MSSQL Server einen View, der auf diverse Tabellen
zugreift.
Sowohl der View als auch die Tabellen wurden vom MSSQL-Server in das
DataSet eingebunden. Wenn ich nun den DataTable im DatSet Datensàtze
àndere erscheinen diese leider erst im View, nachdem ich das DataSet
mittels Update in die DB zurückgeschrieben habe. Dies soll aber nicht
sein.

Kann man eine View als updatableView erstellen, deren Datenbestand sich
aber auf die aktuellen Daten in den datatables bezieht?

mfg
Michael
 

Lesen sie die antworten

#1 Elmar Boye
12/01/2009 - 22:40 | Warnen spam
Hallo Michael,

Michael Kolowicz schrieb:
Ich arbeite mit einem DataSet das auf einem MSSQL-Server aufsetzt. Nun
habe ich auf dem MSSQL Server einen View, der auf diverse Tabellen
zugreift.
Sowohl der View als auch die Tabellen wurden vom MSSQL-Server in das
DataSet eingebunden. Wenn ich nun den DataTable im DatSet Datensàtze
àndere erscheinen diese leider erst im View, nachdem ich das DataSet
mittels Update in die DB zurückgeschrieben habe. Dies soll aber nicht
sein.

Kann man eine View als updatableView erstellen, deren Datenbestand sich
aber auf die aktuellen Daten in den datatables bezieht?



Nein, denn ein DataSet arbeitet prinzipiell ohne Verbindung zur Datenbank.
Es stellt die Verbindung nur temporàr über die SqlDataAdapter her.
Die wiederum kennen nur einzelne Tabellen (bzw. Sichten), eine Beziehung
können zwischen mehreren können sie selbst nicht herstellen.

Deswegen rufe nach Aktualisierungen den Adapter für die DataTable der
Sicht auf, damit die Daten aufgefrischt werden.

Wobei eine zusàtzliche Sicht oftmals nicht notwendig ist, denn über
die Beziehungen (DataRelation) kannst Daten aus verschiedenen Tabellen
über berechnete Spalten zusammenfassen:
<URL:http://msdn.microsoft.com/de-de/lib...n.aspx>

Diese Ausdrücke werden direkt aktualisiert, wenn sich die Daten der
zugrundeliegenden Tabelle veràndern.

Gruß Elmar

Ähnliche fragen