Ich tat etwas Forschung über dem Netz. Unter ist mein Verständnis.
Um Datensatz zur Datenbank zu aktualisieren ist die typische Methode SqlDataAdapter zu verwenden. Aber dieses erfordert, um sql-Befehle außerdem zu führen, mindestens AUSERWÄHLTE Aussage mit SqlCommandBuilder. Wieder wird SqlCommandBuilder nur für Einzelntabelle Updates bedeutet. Das Beispiel in dieser msdn Verbindung zeigt dieses =>
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommandbuilder.aspxUm Multitabellen, using das gleiche SqlDataAdapter/SqlCommandBuilder zu aktualisieren
, sollte es modernisierter Tabelle-durchtabelle eine Adapter für jede Tabelle sein. Diese Verbindung zeigt dieses =>
http://msdn.microsoft.com/en-us/library/4esb49b4(v=VS.80).aspxWenn Sie nur wenige zu aktualisieren haben Tabellen, dann würde ich sagen, den Methoden oben zu folgen. Da der geschriebene Datensatz von der Datenbank verursacht worden ist, würde sein Schema die Datenbank zusammenbringen.
Wechselweise können Sie die xml Daten in Datenbank using MASSENeinsatz des SQL-Servers oder OPENROWSET (MASSE…) direkt importieren oder bcp Dienstprogramm. Wieder das exampless habe ich bis jetzt Abkommen mit einer Tabelle auf einmal gesehen. =>
http://msdn.microsoft.com/en-us/library/ms175915.aspxum oder wenn es eine aus dritter Quellecodegibt Bibliothek, die den Datensatz scannt und sqls verursacht und das tut Update, dann, die ist, was Sie bitten. „Datensatz zur Datenbank im Allgemeinen aktualisieren, ohne sqldataadapter zu verwenden“. Ich überprüfe und aktualisiere, wenn ich irgend solchen Code finde.
oder Sie können andere Werkzeuge benutzen, um xml Daten in Datenbank wie Altova DatabaseSpy, XMLSpy =>
http://www.altova.com/databasespy/database-import-export.html zu exportieren
Für grundlegende einzelne Tabelle arbeitet das Update unterhalb des Codes für mich:
Datensatzdatensatz;
//-Datensatz wird hier gefüllt
Anwendung (SqlConnection Anschluss = neues SqlConnection (connectionString
))
{
SqlDataAdapter Adapter = neues SqlDataAdapter ();
adapter.SelectCommand = neues SqlCommand („AUSERWÄHLTES col1, col2 VON Table1“, Anschluss);
SqlCommandBuilder Erbauer = neues SqlCommandBuilder (Adapter)
;
Anschluss. Öffnen ();
builder.GetUpdateCommand ()
;
Adapter. Update (Datensatz, tableName);
}
Betreffend Ihre Anmerkungen über Datensatz und Anschluss, haben Datensatz doesnot oder Speicheranschlußdetails. die ist seine spezielle Eigenschaft (getrennte Natur). Es ist das SqlDataAdapter, das den Anschluss benutzt. Auch ich denke, dass das Problem das selbe ist, ob es Datensatz oder geschriebener Datensatz ist. Geschriebener Datensatz hilft Ihnen gerade, es zu verwenden mögen einen Geschäftsgegenstand. Das Zugrunde liegen legen taks ist das selbe für beide fest.
Hoffen, dass dieses hilft, Ihnen etwas Licht zu zeigen.