Sql server 文件和数据库设计

Sql server 文件和数据库设计,sql-server,database,file,web,Sql Server,Database,File,Web,我想主持用户上传到网站的图像 然而,我不知道如何将其存储在网站数据库中。 我知道如何使用SQL,但是在SQL server上存储1mb+图像似乎不是一个好主意 我的问题是:如果你有一个上传图像的帐户系统,你会在web服务器上创建某种文件系统,并与SQL数据库一起使用吗 例如,在Web服务器上,您将创建一个/accounts文件夹,其中包含数千个包含图像文件的文件夹。然后使用SQL查询等查找用户名和相关文件夹 抱歉,如果这是一个愚蠢的问题,我只是不知道该搜索什么来了解更多关于这类主题的信息 在数据

我想主持用户上传到网站的图像

然而,我不知道如何将其存储在网站数据库中。 我知道如何使用SQL,但是在SQL server上存储1mb+图像似乎不是一个好主意

我的问题是:如果你有一个上传图像的帐户系统,你会在web服务器上创建某种文件系统,并与SQL数据库一起使用吗

例如,在Web服务器上,您将创建一个/accounts文件夹,其中包含数千个包含图像文件的文件夹。然后使用SQL查询等查找用户名和相关文件夹


抱歉,如果这是一个愚蠢的问题,我只是不知道该搜索什么来了解更多关于这类主题的信息

在数据库中存储图像通常是个坏主意。根据您尝试做的事情的规模,有几种方法可以做到这一点


最简单的管理方法可能是为每个用户创建一个唯一的目录,这样,如果它变大了,那么您可以将其拆分到许多存储设备、虚拟服务器以及您拥有的其他设备上。然后按用户跟踪数据库中的图像信息。

数据库非常擅长存储大量数据/为什么存储1mb以上的图像会成为一个问题?我刚刚读到,通过SQL存储JPEG文件在效率方面是一个坏主意。这不是真的吗?这两种方法都有原因。例如,备份/还原—如果您将映像存储在数据库中,您的备份将包括映像的备份,但您的备份将大得多&创建/还原的时间更长。如果您将它们存储在文件系统中,您可以访问它们,而无需将它们从数据库提取到某个接口中—所需的代码更少,但您需要担心孤立记录(数据库中的文件在磁盘上不存在)—这可能很难维护。我想知道为什么谷歌对某些人没有用处。。简而言之,您将同时使用SQL server和服务器本地目录,对吗?是的,因为您可能希望跟踪每个用户拥有的映像。通过使用用户id的外键将图像名称作为表索引,然后根据需要跟踪其他图像数据,如标题、上载日期等,可以减少一些开销。感谢您的回复!不客气。请将问题标记为已解决,如果可以的话,请投赞成票。谢谢