DataSet zurück in SQl Server schreiben
-
Hi,
ich habe ein DataSet im Projekt, dieses habe ich mittels VisualStudio automatisch erzeugt. Nun habe ich in diesem DataSet Daten verändert und will die Veränderungen im DataSet wieder in den SQL Server übertragen.
Leider bekomme ich immer weider eine Exception:
Aktualisieren: TableMapping['Table'] oder DataTable 'Table' kann nicht gefunden werden.
So sieht der Code aus:
string connectionString = "server=10.50.5.5;" + "Trusted_Connection = yes; database=MyDB"; string commandString = "Select * from tbl_Contacts"; System.Data.SqlClient.SqlDataAdapter DataAdapter = new System.Data.SqlClient.SqlDataAdapter(commandString, connectionString); DataAdapter.Update(ds); // ds ist das DataSet - EXCEPTION in dieser Zeile.
-
Über den Indexoperator gibst Du wahrscheinlich einen Tabellenamen in Deinem Falle "Table" an, die es unter diesen Namen nicht in der Datenbank geben wird.
Mann muss schon grundsätzlich ueber die Struktur der Datenbank bescheid wissen
dann kennt man auch die Tabellen und somit deren Namen.Zumal Du auch im Connectionstring was anderes als diese Tabelle nimmst.
Bitte mal überprüfen kann auch sein das der Codegenerator bei Dir standardmässig "Table" benutzt, was dann 100% in die Hose geht.
Wie gross ist die Chance das man in einer DB eine Tabelle mit dem cleveren Namen "Table" drin hat?
-
Im übrigen ist es in dem Fall ganz praktisch im VS Studio
eine Conection über "Ansicht -> ServerExplorer" zu machen.Weil dann kann man ausm Studio heraus die ganze Struktur der DB begutachten mit der man ne Connection hat oder haben will.
-
Danke schonmal für die Hilfe.
"Table" kommt nicht von mir, ich arbeite durchgängig mit den richtigen Bezeichnern. Den Server Explorer kenn ich, so habe ich ja die Ursprüngliche Datenbankanbindung aufgebaut. Stellt der vielleicht irgendwelche Objekte (ausser dem DataSet) zur Verfügung, die mir die Arbeit erleichtern?
-
1. Mögl.:
hmm Zieh nen OleDbAdapter auf deine Form und stell alles beim Assistenten, der aufghen wird, ein!
Danach wist Du auch automatisch ein Connection-Objekt haben.
Ab dem Punkt machst Du dann noch einen Rechtsklick auf den Adapter und klickst
"DataSet generieren".So nun wäre alles so eingestellt das Du mit der gew. DB spielen kannst
---------------------------------------------------------------------------
2. Mögl.:
Zieh Dir deine Connection per DragDrop aus dem Server-Explorer auf Deine Form
und arbeite damit---------------------------------------------------------------------------
3. Mögl.:
Alle objekte händisch konfigurieren
----------------------------------------------------------------------------
wobei wenn Du nach 1. vorgehst Du ja nat. trotzdem noch die Einstellungen durch Quellcode beeinflussen kannst. Und bei 1. hast Du durch den Assistent gleich die Möglichkeit die DB-Verbindung zu testen. Das gibt Dir gleich kontrolle ob die Verbindung auch im nachhinein funktioniert.
ja mehr kann ich Dir jetzt auch nicht an die Hand geben
-
Danke, hast mir geholfen, mit den Assistenten ist das Ganze recht einfach.