Steffen Malte: MySQL: Bevor Insert -> prüfen ob Schlüsselfelder bereits vorhanden

Beitrag lesen

Hallo!

2 MySQL-Tabellen (Bewegungen,Bestand)
1 Eingabeformular (HTML - PHP)

Es existiert ein Formular mit folgenden Eingabefeldern:
Artikel | Farbe | Anzahl + Submit Button

Hier werden alle Wareneingänge sowie -ausgänge eingetragen.
Die Datensätze werden in die Tabelle "Bewegungen" gespeichert.

Nun möchte ich jede Bewegung die neu hinzukommt mit der
"Bestand"s-Tabelle abgleichen.

Das bedeutet sobald eine neue Bewegung erfolgt muss die
"Bestand"s-Tabelle überprüft werden:
1. ist der Artikel mit der Farbe bereits vorhanden
-> soll eine Addition bzw. Subtraktion erfolgen
2. ist der Artikel mit der Farbe nicht vorhanden
-> soll ein neuer Datensatz in die "Bestand"s-Tabelle aufgenommen
werden.

Das speichern in die "Bewegungen"-Tabelle ist realisiert. Nun
stellt sich mir die Frage wie ich am besten die Datensätze
miteinander vergleichen sollte.

Erster Ansatzpunkt:
select artikel,farbe from bewegungen where artikel = $artikel
and farbe = $farbe;
Als nächstes würde ich die Anzahl der zurückgegebenen Zeilen
prüfen und dementsprechend handeln -> 1 = Update 0 = Insert.
Ist die Vorgehensweiße korrekt oder habe ich etwas vergessen
bzw. könnt Ihr mir einen besseren Weg zeigen?

Gruß
Steffen Malte