c# - 将文件保存在 SQL Server 数据库中

标签 c# sql-server-2008-r2 filestream

我已阅读了在此网站(和其他网站)上可以找到的有关此主题的所有问题和答案,但仍然找不到以下场景的答案。

我有一个托管在数据中心的 SQL Server 2008R2。我的客户正在使用我的 Windows 应用程序,该应用程序将数据存储在 SQL Server 2008R2 数据库中。有Word、Excel、PDF、JPG、PNG 等文档链接到数据库中的记录。我的客户需要从任何地方访问这些文档。

我的想法是,我将把文档保存到数据库记录中,从而使它们可以从任何地方访问。

我的问题是:

  1. 如果托管提供商未在 SQL Server 上打开 FileStream,那么我就无法在自己的数据库上使用该设施,我的假设是否正确? (这似乎是一个合理的假设,但也许有人可以确认这在单个数据库级别上不可用。)

  2. 如果我决定将文件直接保存到磁盘,托管提供商也必须允许读/写文件夹结构,我的假设是否正确?

  3. 最后,任何人都可以评论一下他们在“云托管”SQL Server 数据库中保存文档的实际体验吗?性能是一个需要克服的技术问题还是只是考验用户耐心的问题之一?

感谢您的帮助和见解。

最佳答案

  1. 不,你错了。否则,您仍然可以将文件传入/传出数据库,只是无法使用由数据库本身提供的直接类似文件的 URL。

  2. 是的。不过,几乎所有人都这样做。

  3. 如果做得合理,除了最极端的性能关键情况之外,它没有理由不能很好地工作。这与说你应该这样做不是一回事。

关于c# - 将文件保存在 SQL Server 数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8556142/

相关文章:

c# - 错误 : No Entity Framework provider found for the ADO. 具有不变名称 'System.Data.SqlClient' 的 NET 提供程序

sql - 使用SQL Server 2008自动生成文本文件

sql - 存储过程参数值记录

c# - FileStream.Position 返回负值

sql-server - FileStream:T-SQL 与 Win32

c++ - 从文件中读取第 11 列数字并取平均值?(c++)

c# - 窗口失去焦点后更新 ToolstripDropdownButton 时出现问题

c# - Xamarin.Forms 自定义日期时间 BindableProperty BindingPropertyChangedDelegate

c# - 如何将邮件从我的服务器重定向到中继邮件服务器? ( azure )

SQL:如何从一行的列值构建字符串?