- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQLServer2005数据库开发详解.
1.2大幅提升编程的能力_SQLServer2005数据库开发详解
1.2 大幅提升编程的能力
在集成应用程序开发上,SQL Server 2005 最受人瞩目的当属集成 .NET CLR 引擎到 SQL Server 核心,让程序设计师可以通过自己所熟悉的 .NET 语言来开发 SQL Server 内的对象,扩展了程序编写的弹性。另外,支持 ANSI SQL 2003 与 W3C 的 XML 标准,让关系式和 XML 两种最常用的数据处理格式都可以集中到数据库引擎来处理。
与 .NET Framework 的集成
一致化数据库对象与中间层的程序编写模型。将 .NET 的 Common Language Runtime(CLR)直接集成到 SQL Server 2005 的数据库引擎中,让存储过程、用户自定义函数、触发器、用户自定义数据类型以及聚合函数可以通过 .NET 的语言,如 Visual Basic.NET 或 C# 等等来编写[1],并且直接与 SQL Server 引擎执行在同一个程序中,以提升运行效率。
以往要通过 C++ 编写扩展存储过程才能扩展 SQL Server 功能,但此种方式困难且容易犯错,往往造成编写的功能不如预期,反倒是增加了系统的不稳定性。?
如今可以通过 .NET 语言轻易地办到扩展 SQL Server 的功能。例如通过 Regular Expression 验证数据格式正确与否,集成网络上或其他来源的数据一起提供给前端等等。
应用系统的架构工程师现在有更大的想象空间,让系统分析员和程序设计员等人可以使用相通的分析设计技巧与工具,如面向对象分析设计、程序编写风格、.NET Framework 类型等来扩展 SQL Server 的功能。
Visual Studio 2005可以直接提供 SQL Server 2005 对象格式的项目程序开发实例,其内提供程序代码架构、部署设置以及集成调试的 Script 等。当你编写并编译完当作函数库(.dll 格式)的程序集(Assembly)后,可以通过 SQL 语句或是 Visual Studio 2005 提供的功能,直接将其部署到 SQL Server 中。SQL Server 会将该程序集存放在数据库内,而与外部文件系统上的程序集不再有关系。也就是说若你有新的版本,需要先将 SQL Server 内的程序集及其相关的对象删除,重新布署才可以更新。
当程序集部署到SQL Server 后,通过 Create function、Create Procedure等 T-SQL 语句可以设置存储过程、用户自定义函数等五种对象是来自该程序集。而后就当作一般的 SQL 对象搭配 T-SQL 来使用。前端用户分不出来某个对象是由 T-SQL 还是 .NET 程序语言开发出来的。
除了用户自定义数据类型和自定义聚合函数一定要以 .NET 才能编写外,其他的对象用.NET 和 T-SQL 都可以编写,则何时该用哪种语言架构呢?笔者以为面向数据的函数与程序依然应该采用 T-SQL,也就是说以集合的方式添加、修改、删除和查询数据还是 T-SQL 擅长的部分,若以一般程序语言如 C#/VB.NET 等来逐笔维护数据,反而发挥不了数据库引擎最佳化访问数据的能力。
但若复杂的商业逻辑,如加/解密、网络访问、多线程、文件 I/O 等,需要一步步指引 CPU 如何做事,则适合采用 .NET 程序语言。对于复杂的运算,.NET 程序语言采用编译的方式,其编写程序逻辑与执行程序的方式都比解释式的 T-SQL 语言更好。
由于是数据库引擎内建 .NET 执行环境,因此若将所有的商业逻辑都搬进到 SQL Server 势必大幅增加服务器的负担,因此仍要慎选程序逻辑的执行位置。一般来说若应用与数据适合结合在一起,例如节省网络来回的负荷,数据与运算需要统一管理等,才将程序集成到服务器中。在你细心评估后,若觉得放在数据库引擎是最佳的设计,而后才把组件放入到数据库也行,应用的巧妙存乎一心。
另外,在编写数据库核心程序需要格外的严谨,毕竟以往若前端程序写得不好,在意外状况发生时只会造成几个人的系统有问题,但若在数据库服务器上执行不稳定,或是有安全疑虑,将会拖累到全部数据库服务器的用户。尤其在大型数据库服务器上,可能还有其他系统同时执行,到时会连累到许多其他系统的用户,因此程序开发者和数据库管理员不可不慎。
对 XML 的支持
现今应用程序在交换数据或存储设置时,大多采用 XML 格式。在以往我们可能将 XML 数据以文件的方式存放在硬盘目录结构上,然后把该文件相关的管理信息放入到关系式数据库内。在操作 XML 数据时,一方面通过 SQL 查询语句在数据库内找到相关的 XML 文件,一方面用程序
您可能关注的文档
- SPSS统计描述过程..doc
- SPSS考试习题操作..doc
- spss英文对照..doc
- SPSS统计与EXCEL统计..doc
- spss终期考核作业..doc
- SPSS经济统计实务..doc
- SPSS配置数据源..docx
- spss非参数方法11..doc
- spss软件之英文翻译..doc
- SPU-311双组分聚氨酯防水涂料..doc
- 2025年成都百万职工技能大赛(低压电工)备赛试题库资料(含答案).pdf
- 2025年成都百万职工技能大赛(电力电缆安装运维工)备赛试题库资料(含答案).pdf
- 2025年成都百万职工技能大赛(茶艺师)备赛试题库资料(含答案).pdf
- 2024-2025学年化验员高频难、易错点题【能力提升】附答案详解.docx
- 2024-2025学年化验员高频难、易错点题A4版附答案详解.docx
- 2024-2025学年化验员高频难、易错点题【最新】附答案详解.docx
- 幼儿园水的知识教案6篇.docx
- 2024-2025学年化验员高分题库(综合题)附答案详解.docx
- 2025年成都百万职工技能大赛(电子设备装接工)备赛试题库资料(含答案).pdf
- 2025年成都百万职工技能大赛(电梯安装维修工)备赛试题库资料(含答案).pdf
最近下载
- 精品解析:2025年云南省中考英语真题(解析版).docx VIP
- 2025中国金融市场投资者洞见白皮书.pdf VIP
- 2025年云南省中考英语真题(解析版).doc VIP
- 2025年混凝土质量控制及管理制度(二篇) .pdf VIP
- 北京海淀区2023-2024学年高三上学期期末生物试题 Word版含解析.docx VIP
- 沙漠光伏治沙工程行业可行性分析报告.docx
- 2024云南初中英语中考试卷分析.docx VIP
- 以“政府绩效与公众信任”为主题,撰写一篇小论文.docx VIP
- 2025年艺考生录取分数计算方式.pdf VIP
- 无人驾驶深度之一:无人物流专题:万事具备,爆发元年.pptx VIP
文档评论(0)