ďťż
 
drzewa metoda 5 - zmiana węzła ďťż
 
drzewa metoda 5 - zmiana węzła
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

drzewa metoda 5 - zmiana węzła



A.L.E.C - 26-05-2006 01:43
drzewa metoda 5 - zmiana węzła
  Próbuję walczyć z metodą 5 wg depesza. Mam problem z zamianą w środku gałęzi.
Mam strukturę pracowników:

top1
/ \
middle1 middle2
/ \ | \
bottom1 bottom2 bottom3 bottom4

Teraz chcę zamienić rodzica dla bottom3 i bottom4 z middle2 na middle1. Jak to
wykonać. Po zmianie drzewo powinno wyglądać następująco:

top1 - middle2
|
middle1 - bottom4
/ | \
bottom1 bottom2 bottom3

--
Aleksander A.L.E.C Machniak

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl





baklarz - 26-05-2006 01:43

  Dnia 25.05.2006 A.L.E.C <alec1WYTNIJTO@poczta.onet.pl> napisał/a:
> Próbuję walczyć z metodą 5 wg depesza. Mam problem z zamianą w środku gałęzi.
> Mam strukturę pracowników:
>
> top1
> / \
> middle1 middle2
> / \ | \
> bottom1 bottom2 bottom3 bottom4
>
> Teraz chcę zamienić rodzica dla bottom3 i bottom4 z middle2 na middle1. Jak to
> wykonać. Po zmianie drzewo powinno wyglądać następująco:
>
> top1 - middle2
> |
> middle1 - bottom4
> / | \
> bottom1 bottom2 bottom3
Message-ID: <slrndvoe42.a40.tomek@localhost.localdomain>

--
Tomasz Drobiszewski




A.L.E.C - 26-05-2006 01:43

 
> Message-ID: <slrndvoe42.a40.tomek@localhost.localdomain>

nie widziałem tego wcześniej, ale zauważyłem, że rozwiązanie wymaga kolumny id w
tabeli powiązań. Może zna ktoś inny sposób?

--
Aleksander 'A.L.E.C' Machniak

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl




A.L.E.C - 26-05-2006 01:43

  >
> > Message-ID: <slrndvoe42.a40.tomek@localhost.localdomain>
>
> nie widziałem tego wcześniej, ale zauważyłem, że rozwiązanie wymaga kolumny id w
> tabeli powiązań. Może zna ktoś inny sposób?

dodam, że sposób podany w faq, nie działa na mysql 5.0 (dokładnie DELETE), a o
tą bazę mi głównie chodzi.

--
Aleksander 'A.L.E.C' Machniak

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl





=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 26-05-2006 01:44

  A.L.E.C wrote:
>>>Message-ID: <slrndvoe42.a40.tomek@localhost.localdomain>
>>
>>nie widziałem tego wcześniej, ale zauważyłem, że rozwiązanie wymaga kolumny id w
>>tabeli powiązań. Może zna ktoś inny sposób?

Odpowiedz sobie na jedno pytanie. Dlaczego nie masz kolumny id w tabeli
powiązań. I odpowiednio wykorzystaj odpowiedź.

> dodam, że sposób podany w faq, nie działa na mysql 5.0 (dokładnie DELETE), a o
> tą bazę mi głównie chodzi.

Dodaj jeszcze dlaczego nie działa.

--
P.M.




A.L.E.C - 27-05-2006 00:39
=?iso-8859-2?Q?Re:_drzewa_metoda_5_-_zmiana_w=EAz=B3a?=
  Paweł Matejski wrote:

> Odpowiedz sobie na jedno pytanie. Dlaczego nie masz kolumny id w
> tabeli powiązań. I odpowiednio wykorzystaj odpowiedź.

W faq nie ma tej kolumny, jest dopiero użyta w rozwiązaniu dotyczącym
przenoszenia gałęzi. Dodałem, ale nie pomogło.

> Dodaj jeszcze dlaczego nie działa.

DELETE FROM powiazania
WHERE id IN (
SELECT r2.id
FROM powiazania r1 JOIN powiazania r2 ON r1.child_id =
r2.child_id
WHERE r1.parent_id = 6 AND r2.depth > r1.depth
);

#1093 - You can't specify target table 'powiazania' for update in FROM
clause

p.s. chyba należałoby poprawić faq tak aby sposób na przenoszenie gałęzi
drzewa był zgodny z definicjami tabel podanymi w treści?

--
Aleksander 'A.L.E.C' Machniak http://alec.pl gg-2275252
LAN Management System Developer http://lms.alec.pl




=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 27-05-2006 00:39

  A.L.E.C wrote:
> Paweł Matejski wrote:
>
>
>>Odpowiedz sobie na jedno pytanie. Dlaczego nie masz kolumny id w
>>tabeli powiązań. I odpowiednio wykorzystaj odpowiedź.
>
>
> W faq nie ma tej kolumny, jest dopiero użyta w rozwiązaniu dotyczącym
> przenoszenia gałęzi. Dodałem, ale nie pomogło.

Przyznam się bez bicia, że takiej motywacji nie wziąłem pod uwagę. :)

>>Dodaj jeszcze dlaczego nie działa.
>
>
> DELETE FROM powiazania
> WHERE id IN (
> SELECT r2.id
> FROM powiazania r1 JOIN powiazania r2 ON r1.child_id =
> r2.child_id
> WHERE r1.parent_id = 6 AND r2.depth > r1.depth
> );
>
> #1093 - You can't specify target table 'powiazania' for update in FROM
> clause

Skoro MySQL ma takie ograniczenia, musisz skorzystać z pomocy tabeli
tymczasowej i rozbić powyższe na dwa zapytania.

> p.s. chyba należałoby poprawić faq tak aby sposób na przenoszenie gałęzi
> drzewa był zgodny z definicjami tabel podanymi w treści?

Nic nie stoi na przeszkodzie. Znajdź adres osoby prowadzącej i wyślij do
niej proponowane poprawki. :)

--
P.M.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Firebird - zmiana NULL na NOT NULL Zmiana koloru tekstu i/lub =?ISO-8859-2?Q?t=B3a_w_pojedyncze?==?ISO-8859-2?Q?j_kom=F3rce_DBGrid?= [pgsql] Zmiana schematu do =?ISO-8859-2?Q?kt=F3rego_nalezy_o?==?ISO-8859-2?Q?biekt=2E?= [ORACLE] Zmiana adresu IP Hosta Oracle klient oracle (zmiana domyslna klienta oracla) [ORACLE] Oracle performance manager - zmiana jeżyka z PL na EN =?ISO-8859-2?Q?[MSSQL]_Zmiana_collation_istniej=B1cego_serwera?= [ms sql 2000] Replikacja - zmiana typu kolumny w tabeli ? [trudne] Stan zapasu w kostce OLAP a zmiana przedzialow czasowych hurtowa zmiana polskich liter w nazwach =?ISO-8859-2?Q?plik=F3w_?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • fantazia.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com