SQL Server 2008中的FileStream介绍(sql2008数据库文件在哪)全程干货

随心笔谈2年前发布 编辑
148 0
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买



很多朋友并不知道FileStream 这个功能。因为FileStream 一般在安装的时候默认是不启用的,在SQL Server 2008中,引入了Filestream,使用它可以将非机构化大型数据(如文本文档、图像和视频)等以varbinary(max)的形式存储在文件系统中。使用数据库的备份还原功能可以将这些数据一起备份还原。

在选择数据库文件路径那个窗口,有一个标签是”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 Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\testdat.mdf’ ),

  FILEGROUP testGroup1 CONTAINS FILESTREAM

  ( NAME=testgroup_dat ,

  FILENAME=’C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\testGroup1.ndf’)

  LOG ON

  ( NAME=Sales_log,

  FILENAME=’C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\testlog.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 Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\TestFileStreamRecord.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;

具体的使用可参考联机帮助或在线帮助。

您可能感兴趣的文章:FileStream常用的属性与方法总结SQL Server的FileStream和FileTable深入剖析C# FileStream文件读写详解C#使用FileStream循环读取大文件数据的方法示例SQL Server FileStream详解C#流类FileStream学习使用笔记C# FileStream读写的文本操作代码分析c#实现断点续传功能示例分享C#实现文件断点续传下载的方法C# FileStream实现多线程断点续传

© 版权声明

相关文章