Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Optymalizacja bazy
TakiJakis
post
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 7.11.2004

Ostrzeżenie: (40%)
XX---


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)?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thornag
post
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.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 01:59