1

FileTable首先在我的项目中使用 SQL Server 2014 和 EF 代码。

当我使用这个命令

USE [master]
GO
ALTER DATABASE [OnlineStore] 
SET FILESTREAM( DIRECTORY_NAME = N'OnlineStore',
    NON_TRANSACTED_ACCESS = FULL) WITH NO_WAIT
GO

它在 sql 中显示此警告

当 FILESTREAM 数据库选项 NON_TRANSACTED_ACCESS 设置为 FULL 并且 READ_COMMITTED_SNAPSHOT 或 ALLOW_SNAPSHOT_ISOLATION 选项打开时,将阻止对 FILETABLE 上下文中的 FILESTREAM 数据的 T-SQL 和事务性读取访问。

现在我继续创建表,插入文件夹和文件没有问题。

我读取数据的问题,当读取数据时显示此错误:

消息 33447,级别 16,状态 1,行 2
无法访问 FileTable 'File' 中的 file_stream 列,因为 FileTable 不支持行版本控制。将事务级别设置为 READ COMMITTED SNAPSHOT 或 SNAPSHOT 以外的其他值,或者使用 READCOMMITTEDLOCK 表提示。

我首先使用 EF 代码 - 如何解决这个问题?

4

1 回答 1

5

您必须运行此命令才能选择表。USE [master] GO ALTER DATABASE [dbname] SET READ_COMMITTED_SNAPSHOT OFF WITH NO_WAIT

于 2016-06-29T14:20:14.173 回答