2012-11-08 12 views

Odpowiedz

5

Przede wszystkim nie ogranicza się długości "bazy danych". Zamiast tego ogranicza się wielkość kolumn tabel w bazie danych.

Dlaczego to robimy, pytasz?

  1. Nie chcemy marnować miejsca na dane, które nigdy go nie wykorzystają (do tego służą varchar, varbinary i tym podobne).
  2. To najlepsza praktyka, ponieważ zmusza do myślenia o strukturze danych PRZED faktycznym jej użyciu.
  3. Im mniej danych, tym szybsze przetwarzanie aplikacji (to jest tautologia).
  4. Ułatwia sprawdzanie poprawności danych, jeśli dokładnie wiesz, ile miejsca może zabrać.
  5. Indeksy pełnotekstowe zyskują znacznie po ograniczeniu rozmiaru
0

Jednym z powodów, dla których mogę myśleć, jest to, że jeśli nie określiłeś długości typu kolumny, silnik MYsql przyjąłby domyślną wartość długości, która może być o wiele większa od długości rzeczywistych danych, które być przechowywane w tej kolumnie. Dlatego zawsze najlepszą praktyką jest ignorowanie właściwości length kolumny.

0

Ograniczenie długości pól bazy danych zapewnia weryfikację danych, nie otrzymasz żadnych nieoczekiwanych danych o długości innej niż podana. Również niektóre pola nie mogą być indeksowane, na przykład LONG, więc wybierz odpowiednio i mądrze. W odniesieniu do wydajności efekt jest znikomy. Trzeba również pomyśleć o samych danych, na przykład przechowywanie danych w kodowaniu Unicode, takim jak UTF-8, może zwiększyć wymagania dotyczące pamięci masowej.