Mailinglisten-Archive |
> Bin Anfänger. Deshalb muss ich nochmal fragen. DELETE Abfrage ist ja
> auch eine delikate Sache wegen Datenverlust und so.
>
> Weiss nicht warum hier while-schleife nötig.
> Ich habe es erstmal so probiert.
>
> $tsheute = mktime(0,0,0,date("m"),date("d")-1,date("Y"));
> $tsheute = date("Ymd",$tsheute)."000000";
> $squery = "DELETE FROM tbl_test WHERE secondh_time <= '$tsheute'";
> $result = mysql_query($squery);
Dast du denn das SQL-Statment schon mal direkt auf der Datenbank getestet,
z.B. im phpMyAdmin. Gibt es da Fehlermeldungen ? oder liegt es am PHP-Code ?
Gibt es beim parsen Fehlermeldungen ?
> aber so funktioniert es auch nicht :
>
> $tsheute = mktime(0,0,0,date("m"),date("d")-1,date("Y"));
> $tsheute = date("Ymd",$tsheute)."000000";
> $squery = "SELECT * FROM tbl_test ";
> $result = mysql_query($squery);
> while($row = mysql_fetch_array($result)) {
> if($row["secondh_time"] < $tsheute) {
> $secondh_id = $row["secondh_id"];
> mysql_query("DELETE FROM tbl_test WHERE
> secondh_id='$secondh_id'");
> }
> }
Das geht ziemlich auf die Performance, es dauert ewig bis ein paar (mehr)
Datensätze gelöscht werden, es kann ggf. zu einem timeout im PHP-Script
komme. Die Datenbank selbst kann viele schnell auf einmal löschen, deshal ist
die obere Lösung mit einem SQL-Statement vorzuziehen.
> Hat jemand einen vielleicht sogar entscheidenden Tip ?
Debuggen.
Gruss,
Michael
--
Bremische Hafenvertretung e.V. tel: +49 (421) 3090148
IT-Abteilung fax: +49 (421) 3090150
World Trade Center mail: mkoch_(at)_bremen-ports.de
Birkenstrasse 15 www: http://www.bremen-ports.de
D-28201 Bremen
php::bar PHP Wiki - Listenarchive