2012-05-11 6 views
6

Wie speichern Sie am besten Informationen über ein BLOB in der Datenbank? Die Dateierweiterung (.txt, .rar) oder der MIME-Type?SQL: MIME-Typ oder Erweiterung speichern?

Auch, was ist besser: Speichern Sie den Dateinamen mit oder ohne Erweiterung ("Datei" oder "file.txt")?

Worüber ich in erster Linie spreche, ist eine Desktop-App, keine Web-Anwendung.

Antwort

6

Wenn wir reden über Datei-Upload-Speicher zum Beispiel werde ich immer speichern die folgenden Felder:

  • Datei - varbinary (MAX)
  • Filename - nvarchar (255) (einschließlich Dateierweiterung, zum Beispiel „myfile.txt“)
  • Filetype - nvarchar (255) (der MIME-Typ)

der MIME-Typ ist wichtig, wenn es sich um eine Web-basierte Anwendung ist, und Sie möchten Download der Dateien an einem bestimmten poi ermöglichen nt. Mit dem MIME-Typ können Sie dem Browser mitteilen, wie er mit der Datei am besten umgehen soll.

Also die direkte Antwort auf Ihre Frage ist, sowohl den MIME-Typ und die Erweiterung zu speichern. Der Grund dafür ist, dass Sie nicht sicherstellen können, dass die korrekte Dateierweiterung angegeben wurde. Daher benötigen Sie den MIME-Typ, um den Dateityp zu identifizieren. Sie sollten die Erweiterung jedoch mit dem Dateinamen speichern, damit Sie beim Download einen gültigen Dateinamen angeben können.

+0

Vielen Dank für Ihre Gedanken, klingt vernünftig. Worüber ich in erster Linie spreche, ist eine Desktop-App, keine Web-Anwendung. – SeToY

+1

@SeToY: Ich würde immer noch alle 3 Datenbits speichern, auch wenn Sie sie nicht sofort brauchen. Denn wenn Sie es nicht von Anfang an tun, wird es schwierig sein, die Informationen später zu bekommen. In diesem Fall sollten Sie darauf vorbereitet sein, dass sich Ihre Anforderungen ändern. Vielleicht stellen Sie ein Webportal für die Daten bereit, vielleicht entscheiden Sie sich für einen 'in app file reader'. – musefan

+0

Okay, das Speichern des MIME-Typs ist immer besser als das Speichern der Erweiterung. Vielen Dank! :) – SeToY

Verwandte Themen