如何将文件(pdf和word文件)存储到sql数据库以及如何在用户单击时从sql数据库中选择“保存”,“打开”该文件。我使用C#+ asp.net web应用从sql数据库中存储和显示文件
回答
存储文件做项目,你应该从SQL Server 2008中检查出文件流:http://msdn.microsoft.com/en-us/library/cc716724.aspx
其他传统平台也有类似的支持(二进制或图像数据类型)。
另一种方法是您可以将文件存储在共享文件系统中,并且只将该文件的路径存储在SQL表中。
你需要做几件事情:
1)创建UI页面,允许用户上传文件。
该页面将有FileUpload控制检查所需的一些推广
2)编写代码,将这些文件保存到数据库
该文件可以存储为二进制的斑点。这取决于您和您的应用程序来决定数据库的模式。您也可以选择许多ORM工具之一,为您提供访问从代码数据库看到
你有很多选择,选择看起来最自然/容易的任何东西。
3)创建用户界面供用户选择现有的文件
这将使用你的ORM数据层读回文件的列表,并显示某种按钮/链接供用户选择和下载
4)从数据库中检索的文件,当用户选择一个,并返回文件
阅读这篇MSDN文章有关returning binary files
此外,谷歌一点点,你可能会发现很多现有的解决方案,如DNN等框架。
最常见的方法是在数据库中有两列用于存储文件propley。 1列保存文件名及其扩展名(例如:file1.txt),第二列将为数据类型二进制。 在应用程序级别。一个方法获取上传的文件名并将其转换为一个字节数组。那么这个数组存储在二进制字段的sql中。文件名存储在第1个字段中。 要重新读取文件,另一种方法将从sql中读取二进制字段并将其转换回FileStream,然后将其保存为原始文件名(扩展名)。
使用fileUploaded来上传文件。
文件读入到一个字节数组:
byte[] data = System.File.ReadAllByte(File Path);
转换字节[]为十六进制并将其存储在一个nvarchhar数据字段在SQL
stringBuilder sb = new StringBuilder()
foreach(byte b in data)
{
sb.Append(b.ToString("X");
}
当你需要显示它,将其转换回字节[]并创建一个文件,并让用户从此处打开/保存。
- 1. 从Excel文件中提取数据并存储在SQL Server数据库中
- 2. 从数据库中存储和检索电子邮件正文
- 3. 从其存储在数据库中的路径显示图像
- 4. mailto正文 - 显示图像存储在数据库中
- 5. 在数据库中存储XML文件
- 6. 在数据库中存储autocad文件
- 7. 为html显示刮和存储数据
- 8. 从sql数据库显示数据到文本框
- 9. ASP.NET MVC3:存储和显示PDF文件
- 10. 如何从sqlite数据库存储和检索mp3文件?
- 11. C#文件路径未存储在数据库中。它存储“System.Web.UI.WebControls.FileUpload”数据库
- 12. 在Azure SQL数据库中存储文件
- 13. FluentNHibernate映射设置 - SQL Server数据库中的文件存储
- 14. 如何使用C#在SQL数据库中存储XML文件?
- 15. SQL Server 2012 FileTable-是存储在数据库中的文件吗?
- 16. 从数据库中显示文档而不将其存储在硬盘上
- 17. 显示存储并从数据库读取日期
- 18. 将数据从一个CSV文件存储到数据库
- 19. 显示存储在.txt文件中的逗号分隔数据
- 20. 如何从数据库中存储的文本文件中读取数据
- 21. 字段用于从数据库中存储和检索文件(图像)信息显示在网页
- 22. 如何显示存储在数据库中的星星数量
- 23. 从SQL CE数据库在Visual Studio中显示表数据
- 24. 从SQL Server数据库显示表中的数据
- 25. 从sql传输数据库表和存储过程到访问
- 26. LINQ to SQL存储库 - 缓存数据
- 27. 如何在JSP中显示文本文本路径存储在数据库中
- 28. 显示存储在Firebase存储中的Firebase数据库中的图像
- 29. 储存HTML和数据库
- 30. 使用存储在数据库中的'路径/文件名'显示存储在服务器中的图像
哪个数据库供应商? .NET Framework的哪个版本? – 2010-01-30 11:33:54