![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 6 Dołączył: 7.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
Może ktoś z Was opracował i się niem podzieli sposób-zapytanie SQL, procedurę składowaną na sprawdzanie czy drzewo oparte o lvt, rgt http://dev.mysql.com/tech-resources/articl...hical-data.html jest prawidłowe jak chodzi o zgodność wartości w kolumnach lvt, rgt określających strukturę drzewa.
Z tego co na szybko widzę prawa wartość pnia drzewa ROOT [ELECTRONICS ] = ilość rekordów * 2, ale jak zgodność sprawdzić w poszczególnych rekordach tak by np po wykonaniu operacji z błędem np przeniesienie można było wycofać w ramach transakcji. Kod +-------------+----------------------+-----+-----+ | category_id | name | lft | rgt | +-------------+----------------------+-----+-----+ | 1 | ELECTRONICS | 1 | 20 | | 2 | TELEVISIONS | 2 | 9 | | 3 | TUBE | 3 | 4 | | 4 | LCD | 5 | 6 | | 5 | PLASMA | 7 | 8 | | 6 | PORTABLE ELECTRONICS | 10 | 19 | | 7 | MP3 PLAYERS | 11 | 14 | | 8 | FLASH | 12 | 13 | | 9 | CD PLAYERS | 15 | 16 | | 10 | 2 WAY RADIOS | 17 | 18 | +-------------+----------------------+-----+-----+ Pozdrawiam Ten post edytował Mion 1.12.2010, 13:50:27 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 04:31 |