Ich mache eine kleine asp.net mvc App. in dem ich Daten von mehreren berechnen muss CSV-Dateien (zwischen 5 und 10 Dateien).
Die Anwendung muss Upload- und Download-Aktionen für diese Dateien bereitstellen.
Der Teil, wo ich keine Erfahrung habe, ist die Datenbank. Welchen Spaltentyp sollte ich verwenden? Text, Bild, binär? Die Größe einer Datei liegt zwischen 80KB und 500KB
Die Typen TEXT
, NTEXT
und IMAGE
sind veraltet - verwenden Sie sie nicht für die Neuentwicklung. Sie werden endgültig aus einer zukünftigen SQL Server-Version entfernt.
Verwenden Sie für SQL Server 2005 und höher VARCHAR(MAX) / NVARCHAR(MAX)
, wenn Sie mit reinen Textdateien (wie Quellcode oder CSV-Dateien) arbeiten, oder VARBINARY(MAX)
, wenn Sie mit Binärdateien arbeiten.
Diese erlauben bis zu 2 GB Speicher für jede einzelne Datei, und Sie können alle üblichen T-SQL-String-Funktionen verwenden, um sie zu manipulieren (die (N) VARCHAR (MAX) -Felder, dh).
Wenn Sie SQL Server 2008 verwenden, gibt es auch eine zusätzliche Option - das FILESTREAM
-Attribut für VARBINARY(MAX)
-Spalten. Dadurch können Sie die Dateien im Dateisystem des SQL Server-Rechners (anstelle der Datenbanktabellen) speichern und gleichzeitig die Transaktions- und Datenintegrität wahren.
FILESTREAM wird für Dateien empfohlen, die normalerweise und normalerweise größer als 1 MB sind oder wenn Sie mehr als 2 GB benötigen (da Sie nicht mehr als 2 GB in einer normalen VARBINARY(MAX)
-Spalte speichern können).
Marc
Tags und Links asp.net-mvc sql-server text store