0

按照指南(https://damienbod.com/2015/12/05/asp-net-5-mvc-6-file-upload-with-ms-sql-server-filetable/),我试图让文件流在我的企业环境中启用。SQL Server 是具有两个节点的 AlwaysOn 群集。服务器已经有文件流设置。我们只使用 SQL 帐户,我们对这些数据库服务器没有任何物理访问权限。对于我的数据库,启用了文件流式传输:

FileStream-Confirm-01

FileStream-Confirm-02

我也创建了一个 FileTable:

CREATE TABLE [dbo].[BudgetReleaseRequestFiles] AS FILETABLE ON [PRIMARY] FILESTREAM_ON [FILESTREAM_GROUP]
WITH
(
FILETABLE_DIRECTORY = N'DA-BRR-Stream-Dir', FILETABLE_COLLATE_FILENAME = SQL_Latin1_General_CP1_CI_AS
)
GO

我确认此操作已完成:

INSERT INTO [dbo].[BudgetReleaseRequestFiles] ([name],[file_stream])
SELECT
    'Document.pdf', 
    * FROM OPENROWSET(BULK N'E:\Document.pdf', SINGLE_BLOB) AS FileData

我面临的问题是通过网络共享访问上传的文件。从我的企业域连接的开发机器上,我可以轻松访问 *\ServerName\MsSqlServer* 文件夹。我可以在那里看到我的子文件夹:DA-BRR-Stream-Dir 但我无法访问它:我收到一个错误,我无权访问子文件夹。

我可以理解为什么我无法访问此文件夹,但我不知道为什么我可以访问父 MsSqlServer 文件夹?对于从代码下载文件,是否需要启动并运行网络路径?我不能通过数据库服务器而不是网络获取文件吗?

4

0 回答 0