2012-04-19 7 views
5

Ich schreibe eine Forum-Website, aber ich habe ein Problem mit der Gestaltung der Datenbank, um die Beiträge jetzt zu halten. Von dem, was ich gelesen habe, speichert phpBB 3 die Benutzer geposteten Daten als BLOB, und einige speichern Daten als Text. Gibt es einen Vorteil, den man gegenüber einem anderen haben könnte? Was ist mit Max Zeichen, wenn man die Daten als Text speichern würde? Ich habe BLOB-Daten nie aus der Datenbank abgerufen und in Text (oder irgendwelche Daten, die dafür bestimmt sind) analysiert, aber ich denke, es wäre interessant zu lernen, wie man es benutzt.Blob vs Text im Forum

Die Textdaten für den Beitrag werden utf8-codiert sein. Ich benutze MySQL-Datenbank.

Auch, wie würden Sie Bilder für das Forum hochladen und sollten die Bilder als Teil der Datenbank gespeichert werden, wie in einem BLOB zum Beispiel, sollte es als einzelne Dateien gespeichert werden?

Jede Empfehlung/Vorschläge sind willkommen.

+1

Wenn Sie im Spiel codieren, verwenden Sie 'text'. Wenn Sie binäre Daten wie den Inhalt einer Datei in der Datenbank speichern, verwenden Sie einen 'Blob'. Es gibt keinen Grund, 'blob' für Forenbeiträge zu verwenden. –

+0

In Verbindung stehend: http://stackoverflow.com/questions/572850/store-text-in-blob –

+0

Ich las das vorher, aber es beantwortete meine Frage nicht. Speichern die meisten Forum-Sites sie als Textdaten und rufen sie dann aus der Datenbank ab? Das war, was ich dachte, aber ich wurde unsicher, sobald ich über BLOB und phpBB las. – mma1480

Antwort

9

Text und Blob sind fast identisch, der Hauptunterschied ist, dass Sie sich bei der Verwendung von Blob um die Kodierung kümmern müssen. Auf der anderen Seite werden Sie die Codierung eines Textfeldes verwenden gezwungen ... Speichern von Dateien in der Datenbank hat einige Vorteile und disatvantages:

Vorteile:

  • Sicherungen und Schalter auf einen anderen Server sind leichter
  • Keine Notwendigkeit zu erreichen, eine andere Methode hinzufügen, um die Dateien neben der Datenbank

Nachteile zuzugreifen:

  • ein Bild Zugriffsmittel Abrufen es Bytes und vielleicht als temporäre lokale Dateien zu speichern und können komplizierter
  • Dateisysteme sind einfach schneller darauf zurückzuführen sein, geringeren Overhead

Die decission liegt bei Ihnen, die meisten Meinungen, die Ich habe bisher gehört, die Bilder als Dateien zu speichern; Aber das sind Meinungen, versuchen Sie, Ihre Entscheidung auf die Bedürfnisse Ihres Projekts zu gründen.

+0

Gibt es eine Funktion im Codeigniter, um dem Benutzer das Hochladen von Bildern zu ermöglichen? – mma1480

+0

Ich persönlich habe keine Erfahrung mit Codeigniter, kann also nicht sagen. Vielleicht kann dieser Link helfen: [link] (http://codeigniter.com/forums/viewthread/111042/) – Argeman