![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 3 Dołączył: 8.01.2008 Ostrzeżenie: (10%) ![]() ![]() |
Zaczynam prace nad stronką, na której userzy będą mogli dodawać wykonawców, ich utwory itp.
Każdy wykonawca będzie identyfikowany (w urlu) poprzez przefiltrowaną do urla jego nazwę - na przykład zamiast Red Hot Chilli Peppers będzie Red_hot_chilli_peppers - link do wykonawcy: /music/Red_hot_chilli_peppers. Skoro każdy muzyk będzie miał unikalną tą nazwę, czemu by nie zastosować ją jako klucz podstawowy, pomijając w ogóle kolumne z numerami ID? Czy może to jakoś źle wpłynąć na wydajność bazy, szybkość wyszukiwania w niej wykonawców? Bo i tak wyszukiwani będą właśnie bo tej nazwie. Proszę o Wasze rady. Hehe, mam już jeden przeciw - jeżeli ktoś chciałby zmienić nazwę wykonawcy, należałoby również zmienić tą "nazwę urlową", a jeżeli poprzez nią są relacje z innymi tabelami (np. piosenki), tam też trzebaby pozmieniać te urle... Więc dam tabele z kluczem podstawowym jako id i unikalnym jako name_url :-) |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Raz, zmiana byłaby uciążliwa, dwa - wyszukiwanie po indeksach numerycznych jest szybsze.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Hehe, mam już jeden przeciw - jeżeli ktoś chciałby zmienić nazwę wykonawcy, należałoby również zmienić tą "nazwę urlową", a jeżeli poprzez nią są relacje z innymi tabelami (np. piosenki), tam też trzebaby pozmieniać te urle... Więc dam tabele z kluczem podstawowym jako id i unikalnym jako name_url :-) Ale zawsze możesz jako klucza głównego używać ID numerycznego i w ten sposób robić powiązania pomiędzy tabelkami. A nazwa tekstowa używana w linku byłaby zapisana w innym polu z założonym indeksem.Zresztą, chyba nie będzie wielkiej różnicy jeśli zamiast /music/Red_hot_chilli_peppers link będzie wyglądał: /music/1234/Red_hot_chilli_peppers Ten post edytował sowiq 24.06.2009, 13:40:23 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 19 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Tak jak piszą poprzednicy. Absolutnie zrób Id. Szczególnie w relacjach między tabelami by to raziło.
1 jest chyba lepsze niż Red_hot_chilli_peppers a 2 niż Superfajna_folkowa_kapela_ze_starego_grodu_kraka_w_krainie_nad_wisłą_miodem_i_ml kiem_płynącej Jeszcze niech w kilku tabelach to występuje - to już będzie zupełna masakra w bazie. Takie rozwiązanie jest oczywiście możliwe, ale zupełnie nieekonomiczne i bardzo mało wydajne. Dla mnie id wygrywa w stosunku 100% do 0%. Ten post edytował qrzysztof 24.06.2009, 18:51:48 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.09.2025 - 14:58 |