von chip |
Dann mach es doch so:
1: | $query ="UPDATE myuser SET email='fn.ln@gmx.de', fname='fn', lname='ln' WHERE myuserId != 1"; |
// EDIT: In Query1 versiehst du den User doch mit einem lock, sodass gerade er nicht geupdatet werden kann, oder? Daher müsste die Query eigentlich so lauten:
1: | $query ="UPDATE myuser SET email='fn.ln@gmx.de', fname='fn', lname='ln' WHERE myuserId = 1"; |
|
von aykut |
1:
2: | query1 ="SELECT count(*) FROM myuser Where myuserId=1 FOR UPDATE; ";
query2 ="UPDATE myuser SET email='fn.ln@gmx.de', fname='fn', lname='ln' "; |
Getrenntes senden der Queries führt dazu,
daß durch query2 alle user upgedated werden statt nur ein "bestimmter" user,
der ja in query1 durch WHERE clause bestimmt ist.
Kurz: Getrenntes absenden der queries (zumindest wie ich sie mache) führt nicht zum gewünschten Ergebnis. :( |
von chip |
2 getrennte Queries wären denke ich schon empfehlenswert. |
von aykut |
Folgender Code führt innerhalb von php kein Update durch,
wenn ich aber in Mysql direkt eingebe, tut es aber.
Fehlermeldung bekomme ich auch nicht.
1:
2:
3:
4: | query ="SELECT count(*) FROM myuser Where myuserId=1 FOR UPDATE; ";
query .="UPDATE myuser SET email='fn.ln@gmx.de', fname='fn', lname='ln' ";
mysql_query($query, $connection); |
Wie benutzt man SELECT ... FOR UPDATE in php5 für mysql? 
(Liegt es eventuell daran, daß in dem Query 2 statements sind?)
Aykut |
|