lagerverwaltung

Thomas_Jung

Erfahrenes Mitglied
hallo

ich habe 2 tabellen
tabelle1 hat die felder lager, regal, hoehe, fach und status
tabelle2 hat die felder lager, regal, hoehe und fach

in tabelle1 gibt es einen datensatz mit lager = 1 regal = 1 hoehe = 1 fach = 1 status = null
und lager = 2 regal = 2 hoehe = 2 fach = 2 status = null
und lager = 3 regal = 3 hoehe = 3 fach = 3 status = null
u.s.w
in tabelle2 gibt es einen datensatz mit lager = 2 regal = 2 hoehe = 2 fach = 2
u.s.w

nun möchte ich eine abfrage b.z.w script erstellen:
wenn der datensatz von tabelle2 in der tabelle1 vorhanden ist soll er im feld status von tabelle1 mit belegt gekenzeichnet werden ist er nicht vorhanden mit frei.
geht das nur über eine suchfunktion oder gibt es andere möglichkeite die tabellen abzugleichen.
ich hoffe ich habe mich nicht zu kompliziert ausgedrückt.

gruß
thomas
 
Hi,

du machst eine While-Schleife für Tabelle2 und lässt in Tabelle1 nach Einträgen suchen, die mit den Einträgen aus der Tab2 identisch sind. Wenn... naja egal ich schreibe einfach mal den Script ;)

PHP:
$sql = mysql_query("SELECT * FROM tabelle2");
while($data = mysql_fetch_array($sql)) {
$sql2 = mysql_query("SELECT * FROM tabelle1 WHERE lager = '$data[lager]' AND regal = '$data[regal]' AND hoehe = '$data[hoehe]' AND fach = '$data[fach]'")
$check = mysql_num_rows($sql2);
$data2 = mysql_fetch_array($sql2);
if($check >= 1) {
$update = mysql_query("UPDATE tabelle1 Set status = 'belegt' WHERE id = '$data2[id]'");
} else {
$update = mysql_query("UPDATE tabelle1 Set status = 'frei' WHERE id = '$data2[id]'");
}

Bitte schön! ;)
Du solltest in die Tabelle1 noch eine Spalte mit "id" reinpacken.
Kein Plan ob es geht. Nicht probiert.

mfg
DarkManX
 
hallo
danke an DarkManX mein problem ist die id
es gibt kein feld mit id es sind alles altbestände die ich neu einpflegen soll
ca 590000 datensätze.
werde es mal mit deinen vorschlag angehen und das feld id nutzen

danke
thomas
 
wenn du keine id hast, solltest du eine dazupflegen... du kannst ja festlegen, wo er mit zählen anfangen soll...
auf jeden fall macht es die sache schon mal viel leichter

Allein schon wegen diesem hier:
nun möchte ich eine abfrage b.z.w script erstellen:
wenn der datensatz von tabelle2 in der tabelle1 vorhanden ist soll er im feld status von tabelle1 mit belegt gekenzeichnet werden ist er nicht vorhanden mit frei.
würde ich eine Id einpflegen, weil sich damit die Sätze einfach identifizieren lassen.
 
hallo DarkManX
habe die id hinzugefügt und es funktioniert super ABER
status = 'belegt' wird erfolgreich durchgeführt
wenn der datensatz nicht vorhanden ist passiert nichts
kannst du mir dabei noch helfen?
gruß
thomas
 
Zuletzt bearbeitet:
hallo
danke für deine schnelle antwort
das ergebnis ist leider das gleiche habe auch schon zig möglichkeiten ausporobiert
verstehe es nicht.
gruß
thomas
 
Zurück