说实话,我不知道文件流是如何工作的。这是我第一次使用和试验它。 所以,我能够将数据存储在文件流列中,但我不知道如何检索它或检索它后它应该如何看。 是否可以只单击一个按钮,然后文件流列中的文件才会打开?例如,我将ms文档文件存储在数据库中,然后文件将以microsoft word打开或者我存储了pdf,然后该文件将在pdf阅读器中打开。有可能吗?
对不起,如果这是一个愚蠢的问题。呵呵。谢谢。
答案 0 :(得分:0)
FILESTREAM
看起来与普通varbinary(max)
列没有什么不同。这意味着您将存储二进制大对象(BLOB)。然后,SQL Server将这些BLOB存储为文件系统上的文件,而不是将它们直接存储在数据库中。
您可以将其完全视为.NET端的varbinary
列。获取您要存储的任何数据,将其转换为byte
数组,然后将其保存到数据库中。
当您检索它时,它将再次位于byte
数组中。您将需要对它进行一些操作才能使它有用(在本地将其写入文件,处理并显示它等)。
注意,如果启用它,您还可以使用Win32 API访问FILESTREAM BLOB。有关详细信息,请参阅this link。