我有一个在线用户准入门户,其中有 4 个简历栏——父亲、母亲、监护人和申请人。用户在申请特定课程时上传这些简历。我应该使用哪种方法将这些上传的简历(.docx
格式文件)存储到我的数据库中?
我有一个上传器,我创建了一个文件夹,然后将
.docx
文件保存到该文件夹中,并将文件路径存储在filepath
表格列中;或者
我有一列类型
varbinary(MAX)
并将.docx
文件本身存储在此列中。
哪种方法更安全,性能更好?
我有一个在线用户准入门户,其中有 4 个简历栏——父亲、母亲、监护人和申请人。用户在申请特定课程时上传这些简历。我应该使用哪种方法将这些上传的简历(.docx
格式文件)存储到我的数据库中?
我有一个上传器,我创建了一个文件夹,然后将.docx
文件保存到该文件夹中,并将文件路径存储在filepath
表格列中;
或者
我有一列类型varbinary(MAX)
并将.docx
文件本身存储在此列中。
哪种方法更安全,性能更好?
我不会将文件存储在数据库的列中,而是使用FILESTREAM (SQL Server)
FILESTREAM 使基于 SQL Server 的应用程序能够在文件系统上存储非结构化数据,例如文档和图像。应用程序可以利用文件系统的丰富流式 API 和性能,同时保持非结构化数据和相应结构化数据之间的事务一致性。
我更喜欢选项#2,因为这样您的简历就包含在数据库中,您不必担心在数据库之外备份外部文件。我认为这个选项也更安全,因为您也不必担心 NTFS 权限。很多时候,SQL Server 被放置在 app/web 和 sql server 之间的防火墙后面。从这个意义上说,您的数据更安全。这取决于您的基础架构的架构。
请记住,数据库可能会变得非常大,您必须注意查询性能。做对了,就没有问题了。