> Hallo!
>
> > Ich habe zwei DB's.
> > Die eine steht beim Provider, die andere auf irgendeinem
> > Client. Es k�nnen Daten auf Client, wie auf Server ge�ndert
> > werden (Insert, Update,
> > Delete)
> > In Intervallen von mehreren Minuten sollen diese DB's nun
> > abgeglichen werden. Meine ClientDB ist die Originale. Die die
> > mir wichtig ist.
> >
> > Ich dachte ich kann nun so verfahren:
> > -Alle Datens�tze holen, die einen Timestamp haben, der nicht
> > �lter ist als ***Zeitpunkt des letzten Abgleichs*** und
> > dieses in ein Dataset speichern
> > (Server)
> > -Das DataSet sollte ja "wissen" welche Spalte die ID-Spalte ist...
> > (MissingSchemaAction.AddWithKey)
>
> Bei "MissingSchemaAction" geht es um Strukturinformationen, in dem Fall
> also darum, dass auch neue (Prim�r-)Schl�sselinformationen erzeugt
> werden. Das funktioniert aber nur, wenn das DataSet auch die
> entsprechenden Strukturinformationen beinhaltet.

O.K. ist jetzt klar.

>
> > -So jetzt hole ich das Dataset des Clients mit den
> > Datens�tzen, die nicht �lter sind als Timestampfeld. -Ich
> > habe also zwei Datasets, die ich (wie ich dachte) Mergen kann...
> >     -AUf der einen Seite m�chte ich wissen was ich am
> > Client f�r Datens�tze �ndern muss
> >     -Auf der anderen Seite muss ich wissen was ich auf dem
> > Server �ndern muss (und dieses Dataset auf den Server bringen)
> >             -Auf dem Server muss ich dann eben das Dataset
> > in Empfang nehmen und ...Eben Inserten, updaten, oder Deleten ...
>
> Wenn Du das DataSet �ber einen DataAdapter f�llst, d�rfte die Methode
> "da.Update(ds)" ausreichen, um die �nderungen, die aufgrund des
> "ds.Merge(...)" erfolgt sind, auch in der Datenbank zu vollziehen. Wie
> gesagt, f�r eine Synchronisation musst Du in beide Richtungen mergen:
>
> da1.Fill(ds1)
> da2.Fill(ds2)
> ds1.Merge(ds2, true, System.Data.MissingSchemaAction.Add)
> da1.Update(ds1)
> ds2.Merge(ds1, true, System.Data.MissingSchemaAction.Add)
> da2.Update(ds2)

Naja soweit bin ich noch nicht.
Erst mal wollte ich es schaffen die ServerDB zu aktualisieren.

Hier tritt aber nun das Problem auf:
-Habe ich keinen Prim�rschl�ssel, dann macht er jedesmal das InsertCommand
-Habe ich einen Prim�rschl�ssel, dann schimpft er, da� ich eine Row
hinzuf�gen will, in der der Prim�rschl�ssel bereits vergeben ist.

Kann ich keine zwei Tabellen Mergen, die einen Prim�rschl�ssel haben?

Ich dachte (und darum gehts mir die ganze Zeit), da� ich eben auch zwei
gleiche Datens�tze Mergen kann.
Also ich habe lokal:
ID      Name            Passwort
1       Mansur  neuesPWD

Ich hole mir das DataSet vom Server:
ID      Name            Passwort
1       Mansur  altesPWD

So jetzt will ich, weil ich eine �nderung auf dem Client habe, da� er mir
diese �nderung in das Dataset einf�gt und dort Updated.

Was meinst DU dazu?

Gru� Mansur

>
> In VS.Net werden die DataAdapter ja fast automatisch erstellt.

Leider habe ich kein VS.Net. Ich verwende f�r die ganze Geschichte asp.Net
WebMatrix von Microsoft ... h�ndisch ...

>
> Freundliche Gr��e
> Joachim van de Bruck
>
>
> | [aspdedotnet] als [EMAIL PROTECTED] subscribed
> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv
> | Sie k�nnen sich unter folgender URL an- und abmelden:
> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp
>


| [aspdedotnet] als [email protected] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp

Antwort per Email an