Mailinglisten-Archive |
Hallo, sorry, ich muss nochmal eine daemliche Frage stellen. Der Sinn einer relationalen Datenbank ist ja, dass Informationen jeweils nur einmal erfasst werden. Nun darf natuerlich nichts geloescht werden, was woanders noch gebraucht wird. Also mache ich ein Select ueber die Tabellen, in denen bewusste Info vorkommen koennte und das mit OR. Die $id ist diejenige, welche ich aus dem vorigen Script uebergeben habe (kommt auch richtig an, hab ich ueberprueft). Soweit sogut, solange nun in beiden Tabellen der Eintrag vorkommt, funktioniert das auch, ist er jedoch nur in einer vorhanden, wird der Datensatz trotzdem geloescht. Warum? Hatte statt || auch schon OR hingeschrieben und diverse andere Varianten mit dem Select versucht, immer dasselbe. $result=mysql_db_query("DB", "SELECT news.news_rubrik, tip.tip_rubrik FROM news, tip WHERE news.news_rubrik = '$id' || tip.tip_rubrik = '$id'"); $row = mysql_fetch_object($result); IF (is_object($row) == 1) { echo "<p>Loeschen von <b>Datensatz $id</b> verweigert. Diese Rubrik wird noch in anderen Tabellen benoetigt. </p>"; } ELSE { mysql_query("DELETE FROM rubrik WHERE rubrik_id = '$id'"); } mysql_free_result($result); Tschuess Joern (Berlin) http://www.jgrube.de --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive