Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

02.04.2015, 08:01

Ich hab eine Verwaltungssoftware geschrieben und kann die Daten in meine Eingabemaske einlesen, aber irgendwie nicht in meine Datenbank schreiben über die Eingabemaske.. Hat irgendwer Lust und Zeit mir da mal eben zur Seite zu stehen??? Programmiert in C# und Datenbank ist Access. Mit folgendem Befehl versuche ich die Daten in die DB zu schreiben:

private void TeilnehmerEingabeSpeichern_Click(object sender, EventArgs e)
{
try
{
this.Validate();
this.personaldatenBindingSource.EndEdit();
this.personaldatenTableAdapter.Update(this._SRH_Verwaltung1DataSet1.Personaldaten);
MessageBox.Show("Die Daten wurden in die Datenbank geschrieben");
}
catch
{
MessageBox.Show("Fehler bei der Datenübertragung ");
}

Close();
}
Bei dem try Versuch zeigt er mir an das die Daten übertragen wurden...aber in der DB ist nichts angekommen???
PLEASE HELP ME

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BlueCobold« (02.04.2015, 10:53) aus folgendem Grund: Ersten Satz entfernt, damit es Sinn ergibt.


Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

2

02.04.2015, 08:23

Hast du schon geprüft, ob evtl. noch ein commit nach dem update durchgeführt werden muss?
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

3

02.04.2015, 08:47

Commit?? K.A. kannst du mir das bitte ein bisschen näher erklären??

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

4

02.04.2015, 10:00

Grundsätzlich kommunizieren Programme per SQL mit der Datenbank (wenn es sich um eine relationale Datenbank handelt). Dabei werden Änderungen durch die Befehle update, insert und delete nicht automatisch durchgeführt, sondern erst gesammelt, bis entweder ein commit oder ein rollback übermittelt wird. Ein Suchbegriff dafür wäre "Transaktionen" ("transactions"). Hast du dir den verlinkten Artikel schonmal durchgelesen?
Allerdings gehört das meines Erachtens nach zu den Grundlagen relationaler Datenbanken. Solltest du dich in der Hinsicht noch nicht ausreichend auskennen, musst du dir diese Grundlagen nochmal anschauen.

Und es wäre sinnvoll gewesen, für deine Frage ein Thema aufzumachen. ;)
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

5

02.04.2015, 11:57

Ja vielen dank erstmal.
Also ich bin gerade mitten im Informatikstudium ;)
Das mit dem Thema werde ich beherzigen. Was Datenbanken angeht, hab ich bisher überhaupt keine Erfahrungen, daher auch die Dummfragerei. Also verständnisshalber, werden alle eingegebenen Daten in meinem Dataset gespeichert und mit Beendigung bzw. mit einem Befehl an die DB übertragen... Auch wieder so eine Sinnfreie Befehlsreinfolge, wieso dann erst den Update Befehl, wenn der doch nichts updatet... naja, danke trotzdem.

Tobiking

1x Rätselkönig

  • Private Nachricht senden

6

02.04.2015, 12:06

Auch wieder so eine Sinnfreie Befehlsreinfolge, wieso dann erst den Update Befehl, wenn der doch nichts updatet... naja, danke trotzdem.

Es ist nicht sinnfrei, wenn man weiß was und wofür Transaktionen sind. Wenn du Abhängigkeiten zwischen zwei Datenbanktabellen hast und du Updatest eine, das Updaten der zweiten geht aber schief, bist du froh das es noch nicht geschrieben wurde. Du hättest dann nämlich einen kaputten Datenstand.

7

02.04.2015, 12:11

Kann das nicht auch beim schreiben in die DB passieren??
Egal, Dankeschön :))

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

8

02.04.2015, 12:16

Genau darum geht's ja. Du willst immer sicherstellen, dass alles oder gar nichts geschrieben wurde. Dafür sind Transaktionen eben da. Du bereitest die Daten vor (1), gibst sie dann zum Schreiben weiter (2) und committest (3) das Ganze als "so soll's sein oder gar nicht". Zwischen 1 und 2 kann man prima mehrere Schleifen drehen. Daher ist der Commit ja auch so wichtig, weil der erst wirklich sagt, dass das jetzt gelten muss - sofern möglich. Wenn nicht möglich, darf eben nichts davon geschrieben werden. Wäre für einen Autoverkäufer ja auch blöd, wenn in seiner Tabelle ein Auto weniger drin steht, aber kein Geld auf seiner Konto-Tabelle rein kam. Das gibt's eben nur als Gesamtpaket.
Daran ist nichts überflüssig.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

9

02.04.2015, 12:24

OK, habs kapiert.
Alles richtig.....
:thumbsup: :thumbsup: :thumbsup:

Werbeanzeige