FileTable是基于FILESTREAM的一個(gè)特性。有以下一些功能:
•一行表示一個(gè)文件或者目錄。
•每行包含以下信息:
• •file_Stream流數(shù)據(jù),stream_id標(biāo)示符(GUID)。
•用戶(hù)表示和維護(hù)文件及目錄層次關(guān)系的path_locator和parent_path_locator
•有10個(gè)文件屬性
•支持對(duì)文件和文檔的全文搜索和語(yǔ)義搜索的類(lèi)型列。
•filetable強(qiáng)制執(zhí)行某些系統(tǒng)定義的約束和觸發(fā)器來(lái)維護(hù)命名空間的語(yǔ)義
•針對(duì)非事務(wù)訪(fǎng)問(wèn)時(shí),SQL Server配置FILESTREAM共享區(qū)下公開(kāi)在FileTable中表示的文件和目錄結(jié)構(gòu)
將防火墻配置為進(jìn)行 FILESTREAM 訪(fǎng)問(wèn)。
--1.配置實(shí)例級(jí)別的filestream,取值如下
--0:為此實(shí)例禁用 FILESTREAM 支持。
--1:針對(duì) Transact-SQL 訪(fǎng)問(wèn)啟用 FILESTREAM。
--2:針對(duì) Transact-SQL 和 Win32 流訪(fǎng)問(wèn)啟用 FILESTREAM。
EXEC sp_configure 'filestream_access_level', 2
GO
RECONFIGURE
--啟動(dòng)
ALTER DATABASE test SET FILESTREAM (NON_TRANSACTED_ACCESS = FULL, DIRECTORY_NAME ='test' )
--添加filestream文件組
ALTER DATABASE test ADD FILEGROUP filestreamgroup CONTAINS FILESTREAM
GO
ALTER DATABASE test ADD FILE (NAME = 'fg1', FILENAME ='D:\FileStream\fg1' ) TO FILEGROUP filestreamgroup
GO
--需要非事務(wù)訪(fǎng)問(wèn),directory_name
SELECT DB_NAME (database_id ), non_transacted_access , non_transacted_access_desc, directory_name
FROM sys. database_filestream_options ;
GO
CREATE TABLE DocumentStore AS FileTable
WITH (
FileTable_Directory = 'DocumentTable' ,
FileTable_Collate_Filename = database_default
);
GO
--插入目錄
INSERT INTO dbo. DocumentStore (name , is_directory )
SELECT 'MyDir01' , 1 ;
--在新增目錄上,插入文件
SELECT @path = path_locator
FROM dbo. DocumentStore
WHERE name = 'MyDir01'
SELECT @new_path = @path. ToString() +
CONVERT (VARCHAR (20 ), CONVERT (BIGINT , SUBSTRING (CONVERT ( BINARY( 16), NEWID ()), 1 , 6))) + '.' +
CONVERT (VARCHAR (20 ), CONVERT (BIGINT , SUBSTRING (CONVERT ( BINARY( 16), NEWID ()), 7 , 6))) + '.' +
CONVERT (VARCHAR (20 ), CONVERT (BIGINT , SUBSTRING (CONVERT ( BINARY( 16), NEWID ()), 13 , 4))) + '/'
INSERT INTO dbo. DocumentStore (name , file_stream , path_locator )
SELECT N'空文件.txt' , 0x , @new_path
SELECT getpathlocator ( '\\fanr-pc\SQL2016\test\DocumentTable\1.txt' ), * FROM DocumentStore
以上所述是小編給大家介紹的SQL Server 2012 FileTable 新特性詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- SqlServer2012中First_Value函數(shù)簡(jiǎn)單分析
- SQL Server 2012無(wú)法連接到WMI提供程序(Cannot connect to WMI provider)解決方案
- Microsoft SQL Server 2012 數(shù)據(jù)庫(kù)安裝圖解教程
- PHP調(diào)用MsSQL Server 2012存儲(chǔ)過(guò)程獲取多結(jié)果集(包含output參數(shù))的詳解
- SQL Server 2012 安裝圖解教程(附sql2012下載地址)
- SQL Server的FileStream和FileTable深入剖析