之前的版本里面SQL Server已经可以支持Filestream的功能,通过Win32 API或TSQL来访问存储在文件系统中的BLOB数据,但是最大的问题来自于与遗留应用程序的兼容性无法解决,如果相提高性能必须通过TSQL先获取文件的handle然后用API访问文件,很多程序使用了Copy等Windows命令或类似于.net framework File类的方式来处理,这样一来好的功能也无法广泛的使用。在SQL Server 2012中提供了一个FileTable的功能,通过文件驱动的方式模拟了一个共享目录,用户的应用程序可以通过文件API直接对有SQL Server管理的Blob进行操作,这样一来与遗留程序的兼容性就可以解决了。但是目前的产品里面也不是非常的完美,主要就是FileTable的列是固定的,无法根据用户的需求进行自定义,同事对于文件夹的深度也有限制,这些小问题在一些特殊的情况下还需要进行一些定制的操作,但是有了通过文件系统的访问方式已经很不错了,至少简单的通过数据库对文件系统进行管理的基本功能已经有了,剩下的额外功能倒是可以有ISV定制开发了。
转载于:https://www.cnblogs.com/weisun/archive/2011/12/07/2659277.html