萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mssql數據庫 >> 在SQL Server中啟用FileStream

在SQL Server中啟用FileStream

   最近在研究在數據庫中存儲大數據文件,看到了FileStream 這個功能,記錄下來以備後用

  FileStream 一般在安裝的時候默認是不啟用的,如果你留意的話,在選擇數據庫文件路徑那個窗口,有一個標簽是"FileStream".

  如果在安裝的時候你沒有啟用,安裝後可以通過以下設置來開啟FileStream 功能。

  1. 打開 SQL Server 配置管理器, 在SQL server 服務下找到你要啟用的SQL Server服務(默認實例一般是 MSSQLServer),右擊該服務,選擇屬性,在屬性窗口你可以看到FileStream 標簽,選中" 針對 Transact-SQL 訪問啟用 FILESTREAM"

  2.執行以下命令在ssms

  EXEC sp_configure filestream_access_level, 2

  RECONFIGURE

  3.創建支持FileStream 的數據庫,

  [sql]

  CREATE DATABASE test

  ON

  ( NAME = test_dat,

  FILENAME = 'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAtestdat.mdf' ),

  FILEGROUP testGroup1 CONTAINS FILESTREAM

  ( NAME = testgroup_dat ,

  FILENAME = 'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAtestGroup1.ndf')

  LOG ON

  ( NAME = Sales_log,

  FILENAME = 'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAtestlog.ldf' ) ;

  當然你也可以用以下腳本,在已存在的數據庫添加一個文件組用於支持FileStream.

  [sql]

  ALTER database test

  ADD FILEGROUP FileStreamRecord

  CONTAINS FILESTREAM

  GO

  --Add a file for storing database photos to FILEGROUP

  ALTER database test

  ADD FILE

  (

  NAME= 'FileStreamRecord',

  FILENAME = 'D:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATATestFileStreamRecord.ndf'

  )

  TO FILEGROUP FileStreamRecord

  GO

  4. 創建可以存儲FileStream 的數據表

  CREATE TABLE FileStreamRecording

  [sql]

  (

  ID int,

  RowGuidColumn UNIQUEIDENTIFIER

  NOT NULL UNIQUE ROWGUIDCOL,

  FILESTREAMColumn varbinary(MAX) FILESTREAM

  );

  [sql]

  [sql]

  5.使用

  [sql]

  INSERT INTO FileStreamRecording VALUES(1, NEWID(), 0x00);

  INSERT INTO FileStreamRecording VALUES(2, NEWID(), 0x00);

  INSERT INTO FileStreamRecording VALUES(3, NEWID(), 0x00);

  GO

  SELECT FILESTREAMColumn.PathName() AS 'PathName' FROM FileStreamRecording;

  具體的使用可參考聯機幫助或在線幫助。

copyright © 萬盛學電腦網 all rights reserved