WEB开发网
开发学院数据库MSSQL Server 使用SQL Server 2008的FILESTREAM特性管理文件 阅读

使用SQL Server 2008的FILESTREAM特性管理文件

 2009-02-26 10:21:54 来源:WEB开发网   
核心提示: 至此,清单1启动ExecuteReader()方法执行SQL语句,使用SQL Server 2008的FILESTREAM特性管理文件(6),执行完查询后,返回文件流的路径,添加一个按钮,命名为btnReadFile,并向它分配一个本地变量:stringpath=reader.GetStr

至此,清单1启动ExecuteReader()方法执行SQL语句,执行完查询后,返回文件流的路径,并向它分配一个本地变量:

string path = reader.GetString(0);

你需要一个流写入到文件中,因此,接下来要创建一个SqlFileStream类的实例,提供路径、事务上下文、文件访问目录、文件选项一览表和分配大小:

SqlFileStream stream = new SqlFileStream(path,
(byte[])reader.GetValue(1), FileAccess.Write,
FileOptions.SequentialScan, 0);

SqlFileStream类是一个新类(SQL Server 2008中才引入的),它提供了以字节序列方式访问FILESTREAM(文件流)列的方法,表1对SqlFileStream类暴露在外的属性做了一个简单的描述。

表1 SqlFileStream类属性

使用SQL Server 2008的FILESTREAM特性管理文件

接下来清单1开始检索用户的输入,转换成字节数组,然后写入到文件流中:

string contents = txtInput.Text;            
stream.Write((System.Text.Encoding.ASCII.GetBytes(contents)), 0,
contents.Length);
stream.Close();

最后,清单1调用SqlTransaction.Commit()方法提交事务:

transaction.Commit();

以上就是往由数据库管理的启用了FILESTREAM(文件流)特性的文件的基本过程,既然已经知道如何写入FILESTREAM列,那从FILESTREAM列读取就简单了。

使用FILESTREAM读取数据

在C#项目的默认表单上,添加一个按钮,命名为btnReadFile,在click事件中插入清单2中的代码。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 SQL Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接