[SQLServer2008与Microsoft数据平台开发]一、前言:目前,随着数据库系统和编程语言的不断发展,它们各自都有了自己专注的特定的功能而逐渐分离开。这导致产生了在现今的应用程序中的数据存储和业务逻辑之间的阻抗失谐...+阅读
接下来的字母可以是以下的任意几种:
· Unicode Standard 2.0定义的字母
· 来自基础拉丁文或者其他语音的十进制数字
· at符号(#),美元符号($),数字符号(#),或者下划线
标识符绝对不能是Transact-SQL的保留字。SQL Server保留了一些大写和小写的保留字。内建的空间或者特殊的字母都不允许出现,尽管你可以在好的老版本的Northwind中看到它们包含了内建的空间。你必须通过把它们括在括号中才可以访问。
我可以在不具有任何T-SQL知识的情况下编写SQL Server2005存储过程吗?
作为过去几年里面微软试图用SQL Server 2005的.集成来称霸市场的野心的结果,许多程序员都认为创建SQL Server存储过程不再必需T-SQL了。不幸的是(或者并非如此,这根据你的观点),这并不全是事实。在技术上是可以在不了解T-SQL的情况下创建存储过程的,但是没有T-SQL的话则无法访问任何的数据。
在CLR存储过程内部进行数据访问,是通过使用标准的ADO.类来完成的。开发人员会在应用程序层发现很多同样的没有用处的数据访问代码,这些代码会很轻易地转移到SQLCLR例程中去。当中间层的这些ADO.类需要使用T-SQL来访问数据的时候,在 CLR主机提供的环境中就会使用同样的类。
我要强调的是,从技术角度来说,不使用T-SQL来编写存储过程是可能的。那么有没有理由这么做呢?一种情况就是这是一个用来从普通文件或者网络服务中检索数据的CLR存储过程,并将数据格式设置为行集。这里可能就会用到不需要T-SQL的操作——但是这并不是对T -SQL存储过程能力的一个很好的比喻。
CLR存储过程vs. T-SQL存储过程
CLR存储过程和函数与T-SQL存储过程和函数相比,性能如何?
专家回答:
这里是用来比较T-SQL例程和CLR例程性能的一种常用的规则:用你的数据,在你的服务器上,测试两套配置,看看哪一个比较好。
就是说,许多人都运行过性能测试,一般的结果就是T-SQL在标准的CRUD(创建、读取、更新、删除)操作上表现要比好一点,而在复杂数学、字符串赋值和其他的超过数据访问的任务上,则是CLR的性能表现更好一点。
SQL Server 的专家Gusto Larriera编辑了如下一些关于这个主题的有用链接:
·在 SQL Server 2005中使用CLR Integration
·简单介绍在 SQL Server 2005中的 CLR Integration
·在 SQL Server 2005中对CLR 和T-SQL做出选择
·介绍 SQL Server 2005中的 CLR Integration
·SQL Server 闲谈: SQL Server 2005 Beta 2 CLR问题与回答
·数据库管理员的酒吧门防御.大坏狼
·用户自定义函数的性能比较
如何在一个存储过程中使用另一个存储过程的结果
以下为关联文档:
1.5结语SQLServer2005数据库开发详解1.5 结语 很多朋友在各种场合询问笔者:透过通过 SQL Server 2005 的各种功能设计,应用程式程序的架构是什么?大哉斯问?!。SQL Server 2005 提供了很多新的功能,但都还需要市场的...
11.1开发给SQLServer2005用的AssemblySQL Server 2005 在核心引擎中加入了 . 的公共语言执行环境CLR (mon Language Runtime)。一直以来 SQL Server 核心引擎只有两大引擎:关系引擎(Relational Engine)和存储引擎...
SQLServer开发问题前十名1在SQL Server中进行开发会让你身处险地,并且寻找快速解决方案。我们编辑了前十名关于SQL Server开发的常见问题。对常见的针对表和字段的名字约束进行探究。学习如何解决并发...
SQLServer开发问题前十名4SQL Server2005中取代了查询分析器问题提交于2005年12月9日我知道SQL Server2005中不再会有查询分析器了。那么还有什么工具具有类似的功能?专家回答:你是对的。查询分...