Mailinglisten-Archive |
On 14-Aug-2001 Joern Grube wrote: > 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. Was du machen willst,ist ein Union, und kein OR: Select news.rubrik as ID from news where news_rubrik=<id> union Select tip_rubirk as ID from tip where tip_rubrik=<id> und dann gucken, ob das resultset leer ist oder nicht. Dummerweise kann MySQL keine Unions (AFAIK zumindest), du musst das also im Client, also wohl PHP-Code, emulieren. Setz einfach zwei Abfragen ab, eine auf news, eine auf tip, (so im Stil der beiden Select-Anweisungen aus dem Union), und wenn beide leere Result-Sets haben, kannst löschen, andernfalls nicht. Michael -- Michael Bergbauer <michael_(at)_noname.franke.de> Use your idle CPU cycles. See http://www.distributed.net and win $ 1 000. Visit our mud Geas at geas.franken.de Port 3333 --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive