我在带有 Filestream 属性列的 sql server 2016 中工作。我有一列激活了文件流属性。当我在 TSQL 中插入 reacord 时,相关文件会在正确的 Filestream 容器文件夹中创建。但问题是当我删除一行时,文件流容器中的关联文件仍然存在并且不会被删除。据我所知这不应该发生并且该文件与其记录完全相关,那么为什么不删除呢?
谢谢
我在带有 Filestream 属性列的 sql server 2016 中工作。我有一列激活了文件流属性。当我在 TSQL 中插入 reacord 时,相关文件会在正确的 Filestream 容器文件夹中创建。但问题是当我删除一行时,文件流容器中的关联文件仍然存在并且不会被删除。据我所知这不应该发生并且该文件与其记录完全相关,那么为什么不删除呢?
谢谢
不需要的文件流容器文件由单独的后台垃圾收集进程物理删除。这些文件最终将被删除以回收存储空间,只是不是实时的。
您可以使用 强制立即进行垃圾回收
sp_filestream_force_garbage_collection
。