[MySQL] Łączenie tabel

0

Witam,
Takie małe pytanko. Co jest bardziej optymalne, stworzenie jednej dużej tabeli z wieloma kolumnami czy dwóch mniejszych z połową tamtych kolumn w każdej?

0

zapoznaj się z pojęciem normalizacja bazy danych i szczególnie z tzw trzecią i pół postacią normalną

0

Za tworzenie jednej dużej tabeli powinien być sąd polowy ;P

0

Dzięki za rady ;)

0
mysql_optymalizacja napisał(a)

Co jest bardziej optymalne

Nie ma czegoś takiego jak "bardziej optymalne". Albo coś jest optymalne albo nie.

Shalom napisał(a)

Za tworzenie jednej dużej tabeli powinien być sąd polowy ;P

Właśnie! Najlepsze tabele to te z jedną kolumną. ;)

A tak na serio, to nie da się odpowiedzieć na to pytanie nie wiedząc co ta tabela/tabele mają przechowywać. Bo może to kolejny pomysł na trzymanie lat w oddzielnej tabeli.

0

@somekind ja zrozumialem autora tak że on chce wcisnąć całą bazę do takiej "dużej tabeli" :P
Jeśli on chce po prostu mieć tabelę która ma dużo atrybutów, to ok, byleby miało to ręce i nogi.

0

Całą bazę danych wcisnąć do jednej tabeli? Nie no, aż takim nowicjuszem to nie jestem :P Chodziło mi bardziej o to, że np. mam tabelę w bazie z kolumnami: ID, LOGIN, HASLO, EMAIL, PODPIS, AVATAR, DATA DOLACZENIA, GG, SKYPE, DATA URODZENIA. I teraz czy lepiej byłoby właśnie zachować taką tabelę, czy zrobić z niej dwie mniejsze? (ID, LOGIN, HASLO, EMAIL, PODPIS i druga ID, GG, SKYPE itd.)? Jakbym jednak zostawił tą jedną tabelę to czy występowały by jakieś przekłamania danych? Co byłoby szybsze?

0

Chodzi ci o dodatkową tabelę w relacji 1:1 ? Tutaj to zbędna i wątpliwa optymalizacja. Takie rozwiązanie przydaje się np. kiedy w bazie masz jakieś duże dane (np. obrazek jakiś czy coś, powiedzmy zdjęcie usera) z których korzystasz rzadko, ale często korzystasz z danych tego usera. Wtedy warto wyrzucić te "ciężkie" dane do osobnej tabeli w relacji 1:1 żeby nie męczyć bazy ich przetwarzaniem kiedy nie jest to konieczne, a pozostawić w tej pierwszej tabeli te dane które są przetwarzane często.

0

I wszystko jasne, dzięki :)

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