就像用户有一个包含列ID,名称和内容(blob)的表文档;我们会要求他在此表中添加一个新列’filepath’.
我们的客户愿意在此数据库中进行此更改.但是,当涉及到更改SQL查询以读取和写入此表时,他们还没有准备接受这个.实际上,他们不希望任何导致重新编译和部署的更改.
现在我们计划编写一个自定义的ADO.NET提供程序
>拦截选择查询
>在select语句的末尾添加一个列’filepath’
>根据’filepath’值撤消结果集并修改’content’列值
是否有任何用例你认为这种方法肯定会失败?
我知道这听起来很脏但我们有更好的方法吗?
解决方法 您是否尝试将列切换为FILESTREAM
数据类型?这将完成您描述的所有 *** 作,将数据从数据库中推出(到文件系统中).当然,访问仍然需要通过服务器作为TDS,但您可能会发现影响较小,并且您可以逐步更改代码以更直接地访问文件(以提高性能) – 最后一步将涉及更改查询,但是. 总结 以上是内存溢出为你收集整理的c# – 自定义ADO.NET提供程序,用于拦截和修改sql查询全部内容,希望文章能够帮你解决c# – 自定义ADO.NET提供程序,用于拦截和修改sql查询所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)