在数据库中存储不同的文件类型(例如 .gif、.doc、.pdf)是一项重大挑战。常见的解决方案是将文件转换为字节数组并将其存储为二进制数据。 但这是最有效的方法吗?
本次分析重点关注 SQL Server 用于存储文件数据的 VARBINARY(MAX)
数据类型。
databaseFilePut
函数读取文件,将其转换为字节数组(使用 FileStream
和 BinaryReader
),并将该数组插入到 Raporty
表的 VARBINARY(MAX)
列中。
databaseFileRead
函数从数据库检索文件并将其保存到指定的文件系统位置。 它从VARBINARY(MAX)
列中读取字节数组,重建文件,并将其写入指定路径。
databaseFileRead
函数还有助于将文件检索为 MemoryStream
。这允许内存中的文件处理,而不需要临时文件系统存储。
MemoryStream
数据databaseFilePut
函数支持将MemoryStream
数据直接插入VARBINARY(MAX)
列。 它在数据库插入之前将 MemoryStream
转换为字节数组。
以上是在 SQL Server 的 VARBINARY(MAX) 中将文件存储为字节数组是有效的数据库存储解决方案吗?的详细内容。更多信息请关注PHP中文网其他相关文章!