使用SQL Server 2008的FILESTREAM特性管理文件
2009-02-26 10:21:54 来源:WEB开发网至此,清单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类属性
接下来清单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中的代码。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››使用linux中的quota教程
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››使用jxl生成带动态折线图的excel
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
更多精彩
赞助商链接