2012-04-19 19 views
5

Piszę stronę forum, ale mam problem z zaprojektowaniem bazy danych do przechowywania postów już teraz. Z tego, co przeczytałem, phpBB 3 przechowuje dane publikowane przez użytkownika jako BLOB, a niektóre zapisują dane jako tekst. Czy jest jakaś przewaga nad inną? Co powiesz na maksymalne znaki, jeśli chcesz przechowywać dane jako tekst? Nigdy nie odzyskałem danych BLOB z bazy danych i nie parsowałem ich do tekstu (lub jakichkolwiek danych, które mają być w tym celu), ale myślę, że nauka korzystania z niego byłaby interesująca.Blob vs tekst na forum

Dane tekstowe dla wpisu będą zakodowane w utf8. Używam bazy danych MySQL.

Ponadto, w jaki sposób zezwolić na przesyłanie obrazów na forum i czy obrazy powinny być przechowywane jako część bazy danych, jak na przykład w BLOB, czy powinny być przechowywane jako pojedyncze pliki?

Wszelkie zalecenia/sugestie są mile widziane.

+1

Jeśli masz kodowanie w grze, używaj "tekstu". Jeśli przechowujesz dane binarne, takie jak zawartość pliku, do bazy danych, użyjesz 'blob'. Nie ma powodu, aby używać "blob" do postów na forum. –

+0

Powiązane: http://stackoverflow.com/questions/572850/store-text-in-blob –

+0

Przeczytałem to wcześniej, ale nie odpowiedziałem na moje pytanie. Czy większość witryn forum zapisuje je jako dane tekstowe, a następnie pobiera je z bazy danych? Właśnie o tym myślałem, ale nie byłem pewien, kiedy przeczytałem o BLOB i phpBB. – mma1480

Odpowiedz

9

Tekst i blob są prawie identyczne, główna różnica polega na tym, że podczas korzystania z obiektów typu blob należy zadbać o kodowanie. Z drugiej strony będzie zmuszony do korzystania kodowanie pola tekstowego ... przechowywania plików w bazie danych ma pewne zalety i disatvantages:

Zalety:

  • zapasowych i przełącza się na inny serwer są łatwiejsze do osiągnięcia
  • Nie trzeba dodać inną metodę, aby uzyskać dostęp do plików obok bazy

Wady:

  • Dostęp do obrazu oznacza zdobycie to bajtów i może przechowywać że jako tymczasowe pliki lokalne i może być bardziej skomplikowana
  • systemy plików są po prostu szybsze ze względu na niższy narzut

decission jest twoje najbardziej opiniami, że Jak dotąd słyszałem, że przechowuję obrazy jako pliki; ale to są opinie, spróbuj oprzeć swoją decyzję na swoich potrzebach projektowych.

+0

Czy istnieje funkcja w kodzie znakowym, aby umożliwić użytkownikowi przesyłanie zdjęć? – mma1480

+0

Osobiście nie mam doświadczenia z codeigniter, więc nie mogę powiedzieć. Być może ten link może pomóc: [link] (http://codeigniter.com/forums/viewthread/111042/) – Argeman