![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 54 Pomógł: 0 Dołączył: 7.11.2004 Ostrzeżenie: (40%) ![]() ![]() |
Założmy, że mamy bazę danych, w niej tabelę posty. W tej tabeli komórki autor_id, data, treść itp... Założmy, że treść jest zwykle długa. Czy opłaca robić się osobną tabelę dla treści? Jeśli tak, to w jakich sytuacjach to się opłaci?
Np. na czym polega szukanie, np. "SELECT COUNT(*) FROM posty". Czy to pobiera wszystkie wartości (czyli im więcej tekstu w komórce treść, tym dłużej zapytanie będzie trwało)? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 504 Pomógł: 2 Dołączył: 31.03.2006 Skąd: Londyn Ostrzeżenie: (0%) ![]() ![]() |
Jesli relacja jest jeden do jeden do wielu to robimy dwie tabele, jesli relacja wiele do wielu to trzy, gdzie przy relacji 1->* mamy np
post_id user_id jakies tam dane i to user_id jest tutaj 'klulczem obcym', post moze nalezec tylko do jednego usera, dlatego zazwyczaj organizuje sie to na dwoch tabelach. W przypadku *->* robimy trzy tabele, np grupa_id grupa_nazwa user_id user_nazwa user_id grupa_id Tutaj kazdy uzytkownik moze nalezec do dowolnie wielu grup, kazda grupa moze zawierac w sobie dowolnie wielu uzytkownikow dlatego tworzymy trzy tabela gdzie ta trzecia to tabela relacji user grupy. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 01:59 |