我在SQL Server 2014中使用FileTable
,在我的项目中首先使用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和事务读取访问。
现在我继续创建表,并插入文件夹和文件没问题。
我读取数据的问题,当读取数据显示此错误时:
Msg 33447,Level 16,State 1,Line 2
无法访问FileTable'File'中的file_stream列,因为FileTable不支持行版本控制。将事务级别设置为READ COMMITTED SNAPSHOT或SNAPSHOT以外的其他级别,或使用READCOMMITTEDLOCK表提示。
我首先使用EF代码 - 如何解决这个问题?
答案 0 :(得分:4)
您必须运行此命令才能选择表。 使用[主人] 走 ALTER DATABASE [dbname] SET NO_WAIT设置READ_COMMITTED_SNAPSHOT