在我看来,clr 存储过程是非常好的东西,它弥补了t-sql 做为一门查询语言的不足,使得数据库在处理逻辑问题的时候不像以前那么蹩脚,许多DB程序员为了用 t-sql实现一个简单的过程逻辑而大伤脑筋,比如一个非常间的需求,我想传递一个数组,里面装有id,想更新这些id的行的状态,就是在传递一个数组到存储过程中并分割成若干个id,一个在C#中非常简单的实现却要为t-sql绞尽脑汁。。。。相信大多数程序员都有我类似的苦恼。而在最近的项目中,涉及到由联通过来的短信数据处理,预处理短信表是由另外一个模块插入的,我负责的模块需要对这个预处理短信表的记录读取出来,定时扫描整个表,如果有需要处理的短信,那么要由windows服务定时读取出来,并且根据短信种类的不同做业务逻辑的分发,整个模块的性能要求非常高,所有的上行短信都要经过这个表,并处理。每秒发生的开连接插入删除造作非常多。最开始的设计是使用windows服务定时扫表并更新回数据库,一条一条的更新回数据库。。。。其性能之差是难以想象的。所以准备采取clr存储过程结合job,把业务逻辑的分发也拿到数据库clr环境下做,节省往返开销和连接开销。
总之,t-sql 是一门面向查询的语言,以数据为主,但是对过程的处理支持却非常差劲,clr 集成就能非常好的弥补了这点。之所以写个开篇,是看到有些人还是对这种技术的应用环境的不了解。好了,接下来,我准备写一些关于clr 集成的 sql server 2005 下的应用,包括clr proc clr function 等。欢迎大家指正!
附上使用context connection 和使用一般数据库连接的对比图,大家可以参考一下。
相关推荐
文章开篇首先介绍了SQL Server 2005作为微软新一代数据库解决方案平台的重要性,指出其在可用性、功能性和规模性支持上的提升。文章特别强调了SQL Server 2005的可编程性革新,即对公共语言运行时(Common Language ...
**二、为什么使用DMVs?** - **性能调优**:DMVs可以帮助识别慢查询、资源瓶颈等问题。 - **故障排除**:当数据库出现异常时,可以通过DMVs收集实时数据进行分析。 - **监控**:定期查询DMVs可以持续监控SQL Server...
- **CLR 集成**:介绍 CLR(Common Language Runtime)在 SQL Server 中的应用。 - **托管代码存储过程**:演示如何使用 C# 编写存储过程并在 SQL Server 中运行。 - **安全考虑**:讨论在 SQL Server 中使用托管...
.NET框架是微软推出的一种开发平台,它为开发者提供了构建各种类型的应用程序的工具和技术。C#(读作“C Sharp”)是.NET框架的主要编程语言,具有现代编程语言的特性,如面向对象、类型安全和垃圾回收。这篇学习...
1. **.NET框架介绍**:书中的开篇会介绍.NET框架的基础知识,包括公共语言运行库(CLR)、组件模型(如Assembly)、垃圾回收机制以及托管代码的概念。理解这些是掌握.NET编程的关键。 2. **C++/CLI语言特性**:书中...
王涛对.NET底层架构和企业级应用有着深厚的兴趣和研究,尤其擅长.NET基础架构、CLR(Common Language Runtime)运行机制,并对ASP.NET、XML、SQL Server等相关技术有深入的理解,同时在面向对象、设计模式和软件架构...
- **介绍**:本书开篇简要介绍了C#语言的基本特点和发展历程,为读者提供了一个关于C#语言的总体印象。 - **重点内容**: - C#语言的设计理念及其与.NET框架的关系。 - C#版本历史回顾,包括主要的新特性。 - C#...