Modelowanie tabeli dla miast - jedna tabela ?

0

Jaki sposób preferujecie tabelę dla podziału administracyjnego? Czy jedna tabela z** parent_id ** czy osobna tabela na miasta i województwa? Chociaż niby wszystko zależy od granulacji. Na tę chwilę potrzebuję województwa->miasta, ale nigdy nie wiadomo czy w przyszłości nie będzie trzeba poszerzyć o pośrednie obiekty.
Osobne tabele to na pewno prostszy select, ale trzeba przerabiać jeśli dojdą pośrednie obszary

0

województwa w jednej, miasta w drugiej i w miastach id województwa - przecież to podstawy z projektowania BD. Ułatwia to zarówno wyszukiwanie miast z danego województwa jak i zawężanie liczby miast po wybraniu województwa. No i eliminuje nadmiarowość danych.

0

Zrób tak jak prawi @abrakadaber A jak dojdzie Ci z czasem pośrednia wartość np gmina czy powiat, to zmieniasz nazwę miast na "miejscowość" i dodasz typ (Gmina/Powiat/wieś... czy co tam jeszcze mozna znaleźć) i typy będziesz zapisywał w osobnej tabeli.

0

tylko wtedy dochodzi i tak parent_id i będzie drzewo (województwo od gminy niczym się nie różni wtedy tylko brakiem rodzica). I wtedy w czym będzie lepsza osobna tabela dla województwa?
Abrakadaber, chyba zbytnio się rozpędziłeś z tymi zaletami (w każdym razie tych wad nie widzę gdy jest jedna tabela hierarhiczna)

0

dobrze to może po prostu pokaż DDLa takiej tabeli, która wg Ciebie jest dobra.

0

phppgadmin: Zrzucanie złożonych nazw tabel i schematów pod Windows jest nie wspierane : )

No np.:
id integer nextval('cities_id_seq'::regclass) [pk
name character varying
parent_id integer

Mając jakąś wioskę, chcesz wyświetlić jej położenie. Obecnie będzie to województwo (gdzie parent = nil), ale domyślam się, że może być wiele miast tak samo nazwanych w tym samym województwie i będę musiał dołożyć np powiat, aby użytkownik mógł wybrać poprawne miasto. Cały czas się zastanawiam nad tymi dwiema koncepcjami: z osobnym województwem i samymi miastami, czy jednak hierarchia i w przyszłości można łatwo dołożyć dowolne obszary pośrednie (tylko trudniej to ORMem zamodelować).

0

można w sumie dodać nadmiarowe klucze typu woj_id, powiat_id aby unikać przechodzenia po drzewie przez parent_id. Co myślicie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1