MySQL: Problem beim Löschen
-
mysql_query('DELETE FROM tabelle WHERE UserID="1" ORDER BY Zeit ASC LIMIT 10;');
Keine Fehlermeldung - gelöscht wird nichts...
Es sollen die ältesten 10 Zeilen gelöscht werden, die einem User gehören....
wo liegt der Fehler?mfg (c)h
-
Ist userid ein INT?
Wenn ja dann brauchst du keine Hochkommas. Wenn nein brauchst du einfache Hochkommas.Letztes ; ist nicht notwendig.
Sollte dies keine Änderung bringen poste mal die Tabellendefinition.
-
Hast du mal danach ein echo mysql_error(); eingebaut?!
-
hmm.. ich hab bis jetzt immer doppelte Anführungszeichen verwendet und hat auch IMMER geklappt...
ist übrigends ein INT...mysql_query('DELETE FROM op_npentry WHERE NPUserID=1 ORDER BY Zeit ASC LIMIT 10') or die(mysql_error());
dann kommt das raus:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY Zeit ASC LIMIT 10' at line 1
--------------------------------
mach ich so...mysql_query('DELETE FROM op_npentry WHERE NPUserID="1" ORDER BY Zeit ASC LIMIT 10') or die(mysql_error());
... dann gibt er mir weder eine Fehlermeldung noch löscht er irgendwas...
Tabellendefinition:
CREATE TABLE op_npentry ( ID INT AUTO_INCREMENT PRIMARY KEY, WriterRealID INT, NPUserID INT, Zeit DATETIME, Inhalt TEXT );
ich teste das ganze mit xampp. Es ist eine MyISAM Tabelle mit latin1_general_ci Kollation(was immer das heißen möge
)
mfg (c)h
-
soo..
muss euch leider zurückpfeifen...
der fehler lag wo anderssorry
mfg (c)h