Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> szybkość kontra objętość
flashdev
post
Post #1





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Witam,

Projektuję bazę danych i chciałbym użyć typu tekstowego na minimum 1000 znaków czyli pole CHAR, oraz VARCHAR odpada.
Z jakiegoś artykułu wiem, że jeśli chce mieć szybkie wyszukiwanie muszę użyć CHAR, wtedy adres danej komórki można w oczywisty sposób obliczyć, ponieważ znamy rozmiar każdego wpisu.
I teraz pytanie:
Który typ danych większy od 255 znaków zajmuje w pamięci stałą liczbę bajtów niezależnie od ilości danych?
Czy ma ktoś link do jakiegoś ładnego zestawienia tych typów w tabelce, z podziałem na te dwie różne możliwości?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
artega
post
Post #2





Grupa: Zarejestrowani
Postów: 174
Pomógł: 42
Dołączył: 22.07.2007
Skąd: /dev/random

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


Cytat
Informacje wynikajace ze zdrowego rozsądku.

Nie zawsze się sprawdza (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Cytat
Jeżeli wiem, ze wpis w bazie danych zajmuje dokładnie 1378 bajtów a chce wyciągnąć 15 678 wpis to wyciągam z zawartośc pamieci z pod adresu: 1378*15678.

Tak ale taka sytuacja wchodzi w gre tylko wtedy kiedy cały rekord ma stałą szerokość i użyasz formatu ROW_FORMAT=FIXED na tabeli.
Cytat
Czyli rozumiem, że pozostaje mi tylko pocięcie danych na 4 części i wrzucenie do 4 osobnych CHARów?

Nie rozumiem, dlaczego aż tak obawiasz się minimalnego spadku wydajności przy stosowaniu ciągów różnej długości. Podaj konkretny przykład może inne rozwiązanie będzie wydajniejsze.
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: 11.10.2025 - 23:31