2011-08-29 17 views
5

zrobiłem badania na bazie CMS za:projekt pola tabeli w bazie danych mysql?

uid(Unique user ID): ustawiony na int(11)

name(nique user name ustawiony na varchar(60)

created(tiemstamp for when user was created) ustawiony na int(11)

title tytuł artykułu jest ustawiony na varchar(255)

1, kiedy należy użyć Int lub char lub varchar lub innych typów

2, jak ustawić liczbę w nawiasach.eg: varchar(60) dziękuję!

+0

Jakie jest pytanie? –

Odpowiedz

10

Powinieneś użyć INT, jeśli chcesz użyć klucza podstawowego (INT jest szybsze do szukania niż ciąg) lub oblicz dane. Na przykład chcesz obliczyć liczbę przedmiotów zakupionych przy zamawianiu niektórych produktów online. Każda linia będzie zawierała opis artykułu, cenę, zamówioną ilość (i więcej - wystarczy podać tutaj przykład). W takim przypadku, przez INT, w przypadku ilości, łatwo będzie uzyskać liczbę zamówionych produktów (łączna liczba produktów do faktury).

Struny z typem "char" i "varchar" są nieco inne. Typ "char" jest zdefiniowany następująco:

Łańcuch o stałej długości, który jest zawsze prawy-dopełniony spacjami do określonej długości, gdy są przechowywane.

W przypadku słów, jeśli zdefiniujesz imię char (200), użyjesz 200 bajtów. Typ varchar jest zdefiniowany następująco:

Łańcuch o zmiennej długości. Uwaga: Spacje końcowe są usuwane po zapisaniu wartości (różni się to od specyfikacji SQL ANSI).

W przypadku słów, jeśli zdefiniujesz imię z varchar (255), a nazwa brzmi "Tim", będziesz użyj 4 bajtów. 3 dla nazwy +1 bajtu dla długości pola.

Zazwyczaj użyć char (6) dla kolorów HTML (FFFFFF) i zazwyczaj użyć varchar do nazwisk, adresów itp ...

Jeśli chodzi o Twoje drugie pytanie, jak od konfiguracji numer w nawiasie. Ta liczba ustawi maksymalną długość ciągu. Jeśli ustawisz varchar (60) w polu i kiedy wstawisz lub zaktualizujesz rekord, a długość łańcucha będzie większa niż 60 znaków, MySQL skróci ciąg, aby użyć pierwszych 60 znaków.

Można sprawdzić wszystkie typy pól tutaj: http://help.scibit.com/mascon/masconMySQL_Field_Types.html

Można również przeczytać o normalizacji bazy danych: http://en.wikipedia.org/wiki/Database_normalization

+0

jeśli zdefiniujesz imię z varchar (255), a nazwa to "Tim", użyjesz 4 bajty. 3 dla nazwy +1 bajtu dla długości pola. dlaczego dodaje 1 bajt dla długości pola. Dziękuję Ci,. – zhuanzhou

+5

Bajt +1 jest wykonywany przez silnik MySQL. Nie możesz tego zmienić. Ponieważ varchar jest łańcuchem o zmiennej długości, wymagane jest poinformowanie MySQL o tym, jak długi jest łańcuch. –

3

Typ ogólny zależy od tego, co faktycznie należy przechowywać. Jednak bardzo ważna jest szybkość i wielkość indeksu PK, dlatego też należy wziąć pod uwagę projektowanie tabel bazy danych.

Liczba w nawiasach wskazuje wielkość czcionki, która ma różne znaczenie w zależności od typu (varchar, na przykład, wskazuje maksymalną liczbę znaków, które można zapisać). Powinieneś zajrzeć do instrukcji obsługi silnika bazy danych.

Powiązane problemy