程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 在SQL Server中啟用FileStream

在SQL Server中啟用FileStream

編輯:關於SqlServer

       最近在研究在數據庫中存儲大數據文件,看到了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;

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

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved