Michael_M Geschrieben 23. August 2010 Geschrieben 23. August 2010 hallo, evtl. kann mir hier ja jemand weiterhelfen. es geht um ado.net in verbindung mit vb2008 wie kann ich am einfachsten 2 tabellen updaten? ich habe eine mysql db mit 2 tabellen "kundenstamm" und "orte" verbunden über die plz. wenn ich jetzt im gridview die plz ändere, wir die leider nur in einer tabelle geändert aber nicht in beiden. ich danke schon mal gruß michael Zitieren
HJST1979 Geschrieben 23. August 2010 Geschrieben 23. August 2010 Hallo ich glaube du hast einen Denkfehler. Wenn du in der Tabelle "Kundenstamm" die PLZ änderst warum soll sie sich dann auch in der Tabelle der Orte ändern? Ich denke du hast es wie folgt aufgebaut: Kundenstamm - KundenID - ... - PLZ Orte - PLZ - Ort Die Tabellen sind dann mit Kundenstamm.PLZ <-> Orte.PLZ verbunden. Wenn das so ist dann DARF sich die PLZ bei Orte nicht ändern da ja in Orte einfach alle PLZ und die dazugehörigen Orte befinden !? Noch einen kleinen TIPP, denn es gibt mehrere Orte zu einer PLZ: Bau deine DB wie folgt auf Kundenstamm - KundenID - ... - PLZ_ID Orte - PLZ_ID - PLZ - Ort das erspart dir VIEEELE Probleme ;-) Gruß Hans-Jörg Zitieren
Michael_M Geschrieben 23. August 2010 Autor Geschrieben 23. August 2010 ich danke dir. war wirklich ein denkfehler von mir. eine frage bleibt trozdem. wie ist die einfachste methode im ado.net 2 tabellen zu updaten? wenn ich zum beispiel einen neuen kunden anlege mit neuer plz, dann wird das nicht in orte tabelle übernommen. gruß michael Zitieren
HJST1979 Geschrieben 24. August 2010 Geschrieben 24. August 2010 Hallo du musst einfach zuerst die PLZ Tabelle ändern (anfügen) und dann die ID ermitteln und dann die Kundenstamm- Tabelle. Zitieren
Michael_M Geschrieben 24. August 2010 Autor Geschrieben 24. August 2010 verstehe ich das dann richtig, das ich die tabellen nicht parallel updaten kann, sondern nur seriell? dazu hätte ich noch ne frage. und zwar, kann man sowas mit dem commandbuilder machen? mit einer tabelle funzt der super bei mir baer was ist, wen jetzt noch mehr tabellen dazu kommen? gruß michael Zitieren
HJST1979 Geschrieben 24. August 2010 Geschrieben 24. August 2010 Hallo ob man mehrere Tabellen "gleichzeitig" updaten kann hängt eigentlich nicht an .NET sondern eher an der Datenbank. Nagel mich nicht fest aber soviel ich weiß kann z.B. MySQL keine 2 Befehle gleichzeitig verarbeiten, der SQL- Server dagegen schon. Ich für mich habe mir angewöhnt immer Tabelle für Tabelle upzudaten. Die Befehle per Commandbuilder zusammenzubauen geht gewiss, aber da kenne ich mich nicht aus, da ich den derzeit nicht verwende. Gruß Hans-Jörg Zitieren
Michael_M Geschrieben 26. August 2010 Autor Geschrieben 26. August 2010 ok, ich danke dir. gruß michael Zitieren
HJST1979 Geschrieben 26. August 2010 Geschrieben 26. August 2010 Kein Problem !! Viel Spass noch Zitieren
streffin Geschrieben 26. August 2010 Geschrieben 26. August 2010 (bearbeitet) Türlich kann ne Datenbank 2 Befehle gleichzeitig. Schreib ne Stored Procedure, und mach das direkt in der Datenbank. Der Vorteil ist auch, dass du a) gegen SQL Injection da weit besser aussiehst, und du sowas dann nur 1x in der Stored Proc anpassen musst, und nicht an 50 Stellen im Frontend. Sql is was tolles, da kann ma viel mit machen, wenn ma von den SELECT FROM WHERE 3 Zeilern weg geht Ich bau mir die DB Anbindung allerdings auch immer selbst im Code, und benutz nicht die Drag n Drop Wizards von VS. Mir isses lieber selber das SQL zu schreiben, und nehm in Kauf, dass ich mir über Updates Inserts und Deletes mehr Gedanken machen muss. Der klare Vorteil meiner Meinung nach is allerdings die Transparenz des ganzen. Wenns n Fehler gibt, dann Find ich den auch ohne "mhhm was macht der im Hintergrund" raten Bearbeitet 26. August 2010 von streffin Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.