位置: 编程技术 - 正文

SQL Server FileStream详解

编辑:rootadmin

推荐整理分享SQL Server FileStream详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

FILESTREAM是SQL Server 中的一个新特性,允许以独立文件的形式存放大对象数据,而不是以往一样将所有数据都保存到数据文件中。以往在对业务系统的文件进行管理时有两种方法,一种是将文件保存到服务器文件系统中,数据库中只保存了该文件的路径,在使用该文件时应用程序连接到服务器读取文件;另一种是将文件以varbinary(max)或image数据类型保存到SQL Server中。而SQL Server 提供了FILESTREAM,结合这两种方式的优点。

FILESTREAM使SQL Server数据库引擎和NTFS文件系统成为了一个整体。Transact-SQL语句可以插入、更新、查询、搜索和备份FILESTREAM数据。FILESTREAM使用NT系统缓存来缓存文件数据。这有助于减少FILESTREAM数据可能对数据库引擎性能产生的任何影响。由于没有使用SQL Server缓冲池,因此该内存可用于查询处理。

以往我们对文件管理有两种方法:

1.数据库只保存文件的路径,具体的文件保存在文件服务器(NFS)上,使用时,编程实现从文件服务器读取文件;

2.将文件直接以varbinary(max)或image数据类型保存在数据库中。

  上面两种文件存放方式都有问题:第一种方法因为会访问磁盘,故受I/O影响性能不是很好,而且不能很好的进行文件备份;第二种方法虽然解决了文件备份(数据库的备份)问题,但是由于字段的字节数太大,对数据库本身也会造成影响,性能也很低下。

  微软在SQL Server 推出了一种新的方式 - FileStream,它不是一种新的数据类型,而是一种技术,它使SQL Server数据库引擎和NTFS文件系统成为了一个整体,它结合了上面两种方式的优点:FileStream使用NT系统来缓存文件数据,而对文件数据的操作可使用Transact-SQL语句对其进行插入、更新、查询、搜索和备份。

一、FileStream配置

1.配置SQL Server安装实例:Start -> All Programs -> Microsoft SQL Server R2 -> Configuration Tools -> SQL Server Configuration Manager

右击属性,切换到FILESTREAM标签,勾选如下配置

2. 打开SQL Server,并配置如下

  以上也可以通过如下脚本执行:

SQL Server FileStream详解

  最后重启SQL Server Service

二、实例展示

  创建FileStream类型文件/组

  创建测试表(注意:如果表包含FILESTREAM列,则每一行都必须具有唯一的行ID)

  插入一些测试数据

  从前台插入一些数据

  检索数据

结果

  文件系统

  

  上面的文件都是上传的真实文件,只不过没有后缀,如果重命名加上后缀,即可读取,如最后一个是excel文件,加上.xls,即可用Excel软件打开此文件

三、注意事项

  请注意以下事项:

&#;并不是所有的文件存储都适合使用FileStream,如果所存储的文件对象平均大于1MB考虑使用FileStream,否则对于较小的文件对象,以varbinary(max)BLOB存储在数据库中通常会提供更为优异的流性能; &#;FileStream可以使用在故障集群上(Failover Cluster),但此时FileStream文件组必须位于共享磁盘资源上; &#;FILESTREAM 与其他 SQL Server 功能的兼容性:

SQL Server中数据行批量插入脚本的存储实现 无意中看到朋友写的一篇文章将表里的数据批量生成INSERT语句的存储过程的实现。我仔细看文中的两个存储代码,自我感觉两个都不太满意,都是生成

将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中目前SQLServer里面是没有相关的工具根据查询条件来生

SqlServer使用 case when 解决多条件模糊查询问题 我们在进行项目开发中,经常会遇到多条件模糊查询的需求。对此,我们常见的解决方案有两种:一是在程序端拼接SQL字符串,根据是否选择了某个条

标签: SQL Server FileStream详解

本文链接地址:https://www.jiuchutong.com/biancheng/312863.html 转载请保留说明!

上一篇:SQL Server中的RAND函数的介绍和区间随机数值函数的实现(sql随机函数rand怎么用)

下一篇:SQL Server中数据行批量插入脚本的存储实现(sql server中数据文件的扩展名是)

  • 金税盘如何交服务费
  • 增值税有哪几类
  • 组成计税价格公式消费税
  • 计提坏账部分收入怎么算
  • 发票未到暂估账务处理
  • 经营性应收项目和经营性应付项目
  • 专用发票丢失怎么抵扣
  • 应收账款售让会计分录怎么写?
  • 本月实现利润总额的25%计算并结转应交所得税
  • 异地施工增值税发票如何开具
  • 印花税为什么不计入资产成本
  • 如何从百旺开票系统中导出开票明细
  • 简易注销还要去找专管员
  • 房改房继承需要原单位开证明吗
  • 增值税已交税金借方有余额
  • 看看大家退休的单子
  • 银行流动性比例要求
  • 购买东西押金不退要怎么处理
  • 销售购进材料会计分录
  • 不良品退回处理流程
  • 内账增值税会计核算
  • 华为手机屏幕下的三个功能键设置方法
  • 华为分享连接电脑显示检查您的拼写
  • 虎杖的养殖方法和用量
  • 计提增值税的会计科目
  • 如何解决连接宽带的方法
  • 公司的车险
  • 财产损失立案
  • 无形资产出租的账务处理
  • PHP:oci_get_implicit_resultset()的用法_Oracle函数
  • PHP函数func_num_args用法实例分析
  • phpdie
  • 摩洛哥首都拉巴特简介
  • 以前年度损益调整借贷方向
  • 房地产企业开始退地的影响
  • 税控盘维护费全额抵扣分录怎么做
  • 可供出售金融资产在资产负债表日反映的是
  • 接受捐赠固定资产的改建支出
  • 数字图像处理总结
  • php获取前一天的时间
  • php yield 异步
  • 用友固定资产折旧方法
  • 出口抵减内销产品应纳税额怎么结转
  • 经销商自用车是指什么
  • 帝国cms使用手册
  • 教育经费什么情况下可以报销
  • 企业所得税的成本怎么填?
  • 算税负是含税还是不含税
  • 定期定额个体经营所得税申报错了怎么办
  • 交易性金融资产属于流动资产
  • windows下MySQL 5.7.3.0安装配置图解教程(安装版)
  • 纳税人销售货物
  • 辅助生产车间的低值易耗品计入
  • 企业缴纳员工社保会计分录
  • 宾馆购买的床财务怎么做账
  • 股东往来款算投资款吗
  • 投资的信托基金有哪些
  • 销售佣金的会计科目
  • 联营企业子公司是否构成关联方
  • 关于废止有关排污收费规章和规范性文件的决定
  • win8无法完成更新正在撤销更改怎么办
  • win7电脑剪贴板里面的内容在哪打开
  • win10系统怎么回滚
  • win10系统虚拟内存
  • msstat.exe - msstat是什么进程 有什么用
  • win7如何压缩图片
  • win8启动后的初始界面
  • centos端口绑定
  • linux中统计字符命令
  • ugui scrollview
  • javascript不严谨
  • JavaScript中的复杂数据类型又称为
  • 如何用jquery
  • unity3d物理现象模拟
  • asynctask优缺点
  • 个人所得税子女教育到多大结束
  • 国税公告2016年14解读
  • 个人纳税记录为多少
  • 纳税信用评级b是多少分
  • 登录上海电子税务局找不到税务数字帐户
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设