Robię małe forum dla mojej strony klanów. Zastanawiam się, czy powinienem przechowywać tekst wątku w TEXT lub BLOB? Co za różnica? Widziałem, że phpBB to robi.Przechowuj tekst w BLOB?
Co to jest BLOB? Nie mogę znaleźć wiele na ten temat w Google.
Robię małe forum dla mojej strony klanów. Zastanawiam się, czy powinienem przechowywać tekst wątku w TEXT lub BLOB? Co za różnica? Widziałem, że phpBB to robi.Przechowuj tekst w BLOB?
Co to jest BLOB? Nie mogę znaleźć wiele na ten temat w Google.
BLOB jest dla danych binarnych. Nie wiem, dlaczego phpBB 3 przechowuje wszystko w systemie binarnym, ale sam to zauważyłem. Domyślam się, że kompresują/kodują wszystko, co umieścili w bazie danych. Możesz spróbować przejrzeć kod źródłowy phpBB, aby zobaczyć, czy są jakieś komentarze wyjaśniające to.
Kropelka to po prostu garść bajtów. Dowolna liczba bajtów, nic więcej.
Jeśli miałbyś przechowywać tekst jako blob, musiałbyś się martwić o kodowanie (proces tłumaczenia tekstu na bajty). Ale jeśli przechowujesz rzeczy jako tekst, niezależnie od transportu bazy danych, twoje użycie sprawi, że tekst przechowywany w bazie danych zostanie odpowiednio zakodowany i zdekodowany, co zapewni zarówno efektywne przechowywanie, jak i łatwą obsługę.
Jeśli zamierzasz przechowywać tekst, powinieneś przechowywać tekst.
phpBB może zaimplementować kodowanie i dekodowanie tekstu samodzielnie i może to być jeden z powodów używania blob zamiast tekstu. Jest to mało prawdopodobne, ale czasami typy danych tekstowych mają maksymalną długość, blob może być pracą dla phpBB w tym konkretnym przypadku.
Re "co" - BLOB to duży obiekt binarny; porównaj z CLOB: Postać dużego obiektu. Różne bazy danych nazywają je różnymi rzeczami - na przykład na serwerze SQL masz image
/varbinary(max)
dla BLOB i text
/varchar(max)
dla CLOB.
Jeśli system obsługuje tylko obiekt BLOB, to jedną z opcji jest kodowanie ciągów znaków - na przykład przy użyciu UTF8. To może być to, co się dzieje.
To może być powód, dla którego funkcja wyszukiwania jest tak zła. – Gumbo