Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Drzewka (for BSP)
DeyV
post
Post #1





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Postanowiłem pobawić się omawianym już kilkakrotnie systemem tworzenia drzew w bazie (np. http://forum.php.pl/viewtopic.php?t=2625 i http://www.depesz.pl/various-sqltrees.php - 5 sposóB) przy pomocy MySQL.
Początkowo wszystko było ok.
Dodawanie pozycji - banalne. Przeglądanie - w te i we wte - również.
Jednak trafiłem na problem. Zastanawiam się, jak efektownie usuwać gałęzie. Oczywiście można pobrać dane wszystkich potomków, i w pętli, lub przy pomocy IN usunąć je.
Jednak wszyscy mówili, że można to zrobić za pomocą pojedynczych zapytań. No i mam problem sad.gif
Wymyśliłem takie zapytanie
Cytat
DELETE FROM powiazania  
USING powiazania AS p  
LEFT JOIN powiazania as p2  
   ON ( p.first_id = p2.second_id )  
WHERE  p2.first_id = 1

jednak nie działa ono do końca poprawnie, gdyz za szybko usuwa sobie niektóre wiersze, i doprowadza to do tego, że niektóre pozostają.

Nie mam również żadnego pomysłu, jak zmontować przenoszenie gałęzi sad.gif

Struktura bazy i przykładowe dane :arrow: http://mstudio.nq.pl/php_pl/inne/test_drzewko.sql


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

Posty w temacie
- DeyV   Drzewka (for BSP)   30.05.2003, 11:45:07
- - uboottd   Metoda faktycznie jest zaawansowana, ale tez bardz...   30.05.2003, 22:44:52
- - DeyV   1. Wydaje mi się, że dane podane przezemnie są już...   31.05.2003, 13:45:09
- - Jabol   Tutaj o kasowaniu gałęzi. Po prostu kasujesz wszys...   31.05.2003, 15:38:52
- - DeyV   CytatPo prostu kasujesz wszystko co ma w first_id ...   31.05.2003, 22:37:28
- - uboottd   Bez InnoDB moze byc ciezko. KodCREATE TABLE kateg...   2.06.2003, 16:51:22
- - DeyV   Usuwanie - chyba udało mi się wymyślić Przy pomo...   2.06.2003, 20:47:42
- - uboottd   Na pierwszy i drugi rzut oka powinno dzialac. Jedn...   3.06.2003, 10:36:07
- - Jabol   co do dwóch userów, to zawsze mozna zrobic pliki, ...   3.06.2003, 14:45:02
- - Jabol   jak w pgsql'u zastopic konstrukcje KEY, ktora nie ...   10.07.2003, 16:45:10
- - uboottd   CytatSzukaj, Czytaj, a osiągniesz sukces! KEY =...   10.07.2003, 18:00:38
- - Jabol   a skąd jest to pole parent, czy to jest tak, że po...   10.07.2003, 18:02:07
- - uboottd   O i to juz jest dobre pytanie Faktycznie zapomnia...   10.07.2003, 18:05:11
- - Jabol   Po dlozszym zastanowieniu doszlem, ze pliki powinn...   12.07.2003, 19:58:54
- - chfast   Wiem, że temat już stary, ale nie chce zakładać no...   2.11.2003, 00:10:12
- - Jabol   CytatJak najlepiej dodawać dane do takiej struktur...   2.11.2003, 08:47:43
- - chfast   Super! Nie znałem tej konstrukcji: INSERT INTO .....   2.11.2003, 10:27:45
- - Jabol   CytatPrzy okazji: do czego przydaje ci się pole pa...   2.11.2003, 11:04:14
- - chfast   Jeszcze odnośnie dodawania nowego pliku. Wykonuje ...   2.11.2003, 12:24:16
- - Jabol   CytatJeszcze odnośnie dodawania nowego pliku. Wyko...   2.11.2003, 12:34:27
- - chfast   CytatA co to jest za tabela ? - pamiętaj - jeżeli ...   2.11.2003, 17:03:31
- - Jabol   ups... nie korzystasz przypadkiem z jakiejś wersji...   2.11.2003, 18:05:55
- - chfast   Cytatups... nie korzystasz przypadkiem z jakiejś w...   2.11.2003, 18:53:40
- - Jabol   Cytat:?maybe http://postgresql.org ? ja osobiście ...   2.11.2003, 18:59:45
- - chfast   Cytatmaybe http://postgresql.org ? Chętnie. Ale ma...   2.11.2003, 19:13:20
- - Jabol   CytatCytatmaybe http://postgresql.org ? Chętnie. A...   2.11.2003, 19:20:32
- - chfast   Sorry za off-topic, ale robie tak: initdb c:/usr/...   2.11.2003, 21:40:25
- - chfast   Cytat2. nie rozumiem za bardzo o czym mówisz Chodz...   3.11.2003, 16:03:36
- - Jabol   co do pierwszego to może spróbuj najpierw spróbuj ...   3.11.2003, 17:03:23
- - GeoS   Ja ze swojej strony dorzuce jedno pytanie: czy wid...   3.11.2003, 19:41:13
- - chfast   Cytatid_current - musisz je wyciągnąć po dodaniu p...   3.11.2003, 23:25:39


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 09:24