- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第19章 开发CLR数据库对象 本章概述 .NET Framework的CLR(common language runtime,公共语言运行时)与Microsoft SQL Server 2005系统的集成是Microsoft SQL Server 2005版本的最重要的开发特性,CLR的集成为Microsoft SQL Server 2005系统带来了大量的新功能,包括使用任何.NET兼容的语言(包括C#、Visual Basic和托管的C++)创建数据库对象的功能。 本章将学习实现.NET CLR与Microsoft SQL Server的集成和创建CLR数据库对象的方法。 本章的学习目标 .NET CLR与Microsoft SQL Server的集成的意义 CLR体系结构的特点 启动Microsoft SQL Server对CLR的支持 创建CLR数据库对象的一般过程 使用Visual Studio 2005创建CLR触发器 使用CREATE ASSEMBLY语句创建程序集 主要内容 19.1 概述 19.2 CLR体系结构 19.3 CLR数据库对象创建过程 19.4 创建CLR触发器数据库对象 19.5 本章小结 19.1 概述 CLR与Microsoft SQL Server的集成在许多方面大大扩展了Microsoft SQL Server的功能。虽然Transact-SQL语言非常适合面向集合的数据访问操作,但是它也存在一些局限性。 Transact-SQL语言是一种程序化语言,不是面向对象语言。CLR与Microsoft SQL Server 2005的集成为其带来了使用现代面向对象语言(例如C#、Visual Basic、C++等)创建数据库对象的能力。虽然这些语言不像Transact-SQL语言那样具有强大的集合处理能力,但是它们也支持复杂的逻辑、有着更强大的计算功能、提供对外部资源的访问、方便代码重用,并且拥有一流的开发环境。 .NET CLR与Microsoft SQL Server 2005的集成支持使用任何.NET语言开发存储过程、用户定义函数、触发器、聚集、用户自定义类型等。这种集成不尽仅是表面的工作,实际上Microsoft SQL Server 2005的数据库引擎内置了CLR。 19.2 CLR体系结构 图19-1 CLR的体系结构示意图 .NET CLR紧密地集成了Microsoft SQL Server 2005的数据库引擎。实际上,CLR驻留在数据库引擎中。Microsoft SQL Server使用特殊的API或宿主层与CLR进行通信,并将CLR与操作系统连接起来。CLR的体系结构如图19-1所示。 Microsoft SQL Server使用进程内宿主控制CLR的执行,将一些必备的功能如内存管理、垃圾回收、线程等,置于数据库引擎的控制之下。在外部实现过程中,CLR将独立管理这些内容。数据库引擎使用了一个更好的视图将系统需求看作一个整体,并且能够比CLR更好地管理内存和线程。进程内宿主CLR提供了更好的性能和可伸缩性。 CLR的体系结构示意图 19.3 CLR数据库对象创建过程 要创建.NET CLR数据库对象,首先必须使用任何一种.NET语言编写托管代码,并将其编译到动态链接库(dynamic link library,DLL)中。实现该过程的最常见的方法是使用Visual Studio 2005创建一个新的SQL Server项目,然后构建该项目即创建DLL文件。 一旦创建了.NET DLL文件,则需要向SQL Server注册该DLL文件,即使用CREATEASSEMBLY语句创建一个虚拟的名称为程序集的SQL Server数据库对象。从本质上来看,该程序集封装了.NET DLL。 CLR数据库对象创建过程示意图 19.4 创建CLR触发器数据库对象 下面,以创建CLR触发器数据库对象的完整过程为例,讲述如何使用Visual Studio 2005工具创建CLR数据库对象。 首先,启动Visual Studio 2005,选择“文件”→“新建”→“项目”命令,打开如图19-4所示的“新建项目”对话框。 19.5 本章小结 本章研究使用Visual Studio 2005创建.NET CLR数据库对象的内容。 首先,分析了.NET CLR与Microsoft SQL Server的集成的意义。 其次,讲述了CLR体系结构的特点和启动Microsoft SQL Server对CLR的支持的方式。 接下来,讨论了创建CLR数据库对象的一般过程。 最后,以CLR触发器数据库对象为例,描述了使用Visual Studio 2005创
您可能关注的文档
- SQL Server2000数据库及应用李伟红电子教案 第11章 SQL Server 2000数据转换.ppt
- SQL Server2000数据库及应用李伟红电子教案 第12章 数据库的备份和恢复.ppt
- SQL Server2000数据库及应用李伟红电子教案 第13章 SQL Server 2000代理服务.ppt
- SQL Server2000数据库及应用李伟红电子教案 第14章 SQL Server 2000数据复制.ppt
- SQL Server2000数据库及应用李伟红电子教案 第15章 分布式查询.ppt
- SQL Server2000中文版基础教程 教学课件 作者 宋晓峰配套习题 SQL Server 2000基础教程测试题(二套).doc
- SQL Server2000中文版基础教程 教学课件 作者 宋晓峰配套习题 SQL Server 2000基础教程测试题(二套)答案.doc
- SQL Server2000中文版基础教程 教学课件 作者 宋晓峰配套习题 SQL Server 2000基础教程测试题(一套).doc
- SQL Server2000中文版基础教程 教学课件 作者 宋晓峰配套习题 SQL Server 2000基础教程测试题(一套)答案.doc
- SQL Server2000中文版基础教程 教学课件 作者 宋晓峰习题答案 项目八 思考和练习答案.doc
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目01.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目02.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目03.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目04.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目05.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目06.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目07.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目09.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目10.ppt
- SQL Server数据库管理系统项目教程 教学课件 作者 程有娥钱冬云洪年松 编著 项目11.ppt
最近下载
- 最新2023版知识产权贯标GBT29490 09知识产权维护运用控制程序(含表单)[知识产权合规管理体系文件].docx
- 煤矿合法股权转让协议9篇.docx VIP
- GB_T 9711-2023石油天然气工业 管线输送系统用钢管.doc VIP
- 导体结构设计.xls VIP
- 电梯安全风险管控清单.doc VIP
- 生殖医学中心专业技术人员考核试题及答案.docx VIP
- 2024年度健康体检大数据蓝皮书.pdf
- 部编版语文六年级上册第四单元教案+教学反思(共6篇).pdf VIP
- 球墨铸铁管与其它管材的连接件技术规范.docx VIP
- NB∕T 11273-2023 工业锅炉设计文件鉴定技术导则.pdf
文档评论(0)