Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Prawidłowe dobieranie typu dla kolumn
wujek2009
post
Post #1





Grupa: Zarejestrowani
Postów: 350
Pomógł: 31
Dołączył: 23.05.2010

Ostrzeżenie: (0%)
-----


Cześć.

Chciałbym rozpocząć dyskusję na temat odpowiedniego doboru typu dla określonej kolumny.
Otóż tworze tabele użytkowników i zastanawiam się nad doborem typu dla "id_user" - Wiadome, aby było unsigned + AUTO_INCREMENT, ale dokładnie zastanawia mnie jaki typ dać?

http://dev.mysql.com/doc/refman/5.0/en/num....html#id1609251
Według tej tabeli, samo SMALLINT (do: 65535) wystarczyłoby mi, ale czy jeśli uda mi się przekroczyć "barierę" 65535 użytkowników to będę mógł zmienić typ z SMALLINT na MEDIUMINT bez żadnych problemów z poprzednimi zarejestrowanymi kontami?

Oraz dołączę drugie pytanie - również związane z tabelą użytkowników. Załóżmy, że mamy kolumnę "zainteresowania" - z doświadczenia wiem, że rzadko go uzupełnia takie pole, ale mimo to chciałbym mieć tą opcje u siebie w serwisie.
I teraz jak ktoś nie uzupełni w/w pola, to ustawiać wartość NULL czy '' ?

Większość skryptów tak prezentuje taką kolumnę:
  1. `zainteresowania` varchar(150) NOT NULL DEFAULT '',


Czyli w przypadku braku wartości, ustawi się '' - czy jest to lepsze rozwiązanie od NULL? W jakich przypadkach powinno wstawiać się NULL?

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Wykorzystanie SMALLINT zamiast INT pozwoli Ci jedynie na zaoszczędzenie jakiś 100 KiB na każde 50 000 użytkowników. Różnicy w wydajności nie powinno być żadnej.

Co do NULL vs "". Jeżeli dana wartość jest nie podana/niezidentyfikowana powinieneś wstawić NULL, ponieważ on oznacza właśnie taki stan.

Ten post edytował Crozin 24.10.2010, 12:31:35
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 - 04:09