projekt bazy
chester - 04-05-2006 00:31
projekt bazy
Witam!
Mam do zaprojektowania i oprogramowania bazę produktów (zassaną z zagranicznego serwisu). Produkty mogą być jednego z 16 typów, jednostkowych produktów będzie około 500 000, całość będzie stała na MySQL 4.x Problem jest takiej natury, że nie wiem czy dzielić produkty na osobne kategorie i tworzyć 16 osobnych tabel, czy też wrzucić wszystko do jednej tabeli. Różnice między typami są mniej więcej takie: typ 1-8 - bez różnicy - wystarczyłoby pole 'nr_typu_produktu'.
id nr_typu nazwa costam - varchar(255) cosinnego - varchar(255)
Ale już w 9-16 są różnice, np. takie
id nr_typu nazwa costaminnego - varchar(255) opis - text (opis w [x]html, musze przechowywać jak jest) jakis_inny_opis - varchar/text (nie wiem jeszcze czy varchar wystarczy)
Przy czym pomiędzy typami 9-16 mogą choć nie muszą występować różnice w nazwie pól a raczej powinienem przechowywać je pod nazwami jakie odpowiadają prawdziwej ich zawartości.
Jeśli utworzę 16 tabel, to będzie chyba mnóstwo zapytań i komplikacje przy dodawaniu jakiegoś nowego typu? Jak wrzucę wszystko do jednej tabeli produkt i będę zostawiał puste pola, to czy się baza nie rozrośnie zanadto?
Spodziewam się sporego ruchu a co za tym idzie sporej liczby odwołań do bazy. Które rozwiązanie jest sensowniejsze?
chester
Grzegorz Szyszlo - 05-05-2006 00:05
chester wrote: > Witam! > > Mam do zaprojektowania i oprogramowania bazę produktów (zassaną z > zagranicznego serwisu). Produkty mogą być jednego z 16 typów, > jednostkowych produktów będzie około 500 000, całość będzie stała na > MySQL 4.x > Problem jest takiej natury, że nie wiem czy dzielić produkty na osobne > kategorie i tworzyć 16 osobnych tabel, czy też wrzucić wszystko do > jednej tabeli. > Różnice między typami są mniej więcej takie: > typ 1-8 - bez różnicy - wystarczyłoby pole 'nr_typu_produktu'. > > id > nr_typu > nazwa > costam - varchar(255) > cosinnego - varchar(255) > > Ale już w 9-16 są różnice, np. takie > > id > nr_typu > nazwa > costaminnego - varchar(255) > opis - text (opis w [x]html, musze przechowywać jak jest) > jakis_inny_opis - varchar/text (nie wiem jeszcze czy varchar wystarczy)
z tego wynika ze id, nrtypu nazwa to cechy podstawowe kazdego typu produktu, a cosinnego,costaminnego,opis,jakisinnyopis to cechy dodatkowe ktore sa lub ich nie ma. co robic? cechy podstawowe wsadz bezposrednio do kolumn tabeli, a cechy dodatkowe do osobnej tabeli z jedna kolumna z wlasciwymi danymi. wymog jest taki, ze wszystkie cechy dodatkowe musza byc jednego typu, np. text bo varchar jest zbyt restrykcyjny. do tego tabela wiazaca, produkt-cecha.
to tak w uproszczeniu. czy to bedzie efektywne w mysql, nie wiem.
znik.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
=?iso-8859-2?Q?=5BMySQL=5D_Wy=B6wietlenie_wszystkich_rekordow _zawierajacy?==?iso-8859-2?Q?ch_duplikat_a__moze_inna_struktura_bazy_danych ?=
Konwesja znaków w dump'ie bazy danych - ISO -> utf-8 -> ISO -> utf-8
=?iso-8859-2?Q?=5BSQL_Server_2000=5D_uprawnienienia_do_u=BFyw ania_widoku_?==?iso-8859-2?Q?opartego_na_tabeli_z_innej_bazy?=
Dwie bazy czy dwie tabele?
[PHP i MySQL] Wstawianie =?ISO-8859-2?Q?rekord=F3w_do_bazy_?==?ISO-8859-2?Q?a_z=B3e_kodowanie?=
=?ISO-8859-2?Q?=5Bmysql=5D_synchronizacja_struktury_bazy_?==? ISO-8859-2?Q?lokalnej_ze_zdaln=B1?=
[Oracle] Co do tworzenia aplikacji dla bazy Oracle
narzedzie do transferu bazy mysql - mysql
narzedzie do transferu bazy odbc - odbc
Połączenie bazy danych z wykonaniem polaczenia telefonicznego
zanotowane.pldoc.pisz.plpdf.pisz.plwawa19wwa91.pev.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|