开发CLR数据库对象:CLR程序集

日期: 2009-10-09 作者:McGraw-Hill翻译:冯昀晖 来源:TechTarget中国 英文

SQL Server .NET 数据提供器   如果你熟悉ADO.NET,你可能想明确地了解一下CLR数据库对象怎样连接数据库。毕竟,ADO.NET使用基于.NET数据提供器(比如SQL Server .NET数据提供器)的客户端建立数据库连接,是用联网库连接的。为了一次数据库调用遍历整个系统的网络支持,对于直接运行在服务器上的代码来说,不是处理这一问题最高效的模式,但对于客户端应用来说是一件好事。为了解决这一问题,微软创建了新的SQL Server .NET数据提供器。

SQL Server .NET数据提供器建立了向SQL Server数据库的内存内连接。   程序集   在CLR对象的编码……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

SQL Server .NET 数据提供器

  如果你熟悉ADO.NET,你可能想明确地了解一下CLR数据库对象怎样连接数据库。毕竟,ADO.NET使用基于.NET数据提供器(比如SQL Server .NET数据提供器)的客户端建立数据库连接,是用联网库连接的。为了一次数据库调用遍历整个系统的网络支持,对于直接运行在服务器上的代码来说,不是处理这一问题最高效的模式,但对于客户端应用来说是一件好事。为了解决这一问题,微软创建了新的SQL Server .NET数据提供器。SQL Server .NET数据提供器建立了向SQL Server数据库的内存内连接。

  程序集

  在CLR对象的编码完成以后,你可以使用该代码创建SQL Server程序集。如果你使用的是Visual Studio 2005,那么你只要简单地选择“部署”选项就行了,它可以负责创建SQL Server程序集和创建目标数据库对象的处理。

  如果你没有使用Visual Studio 2005或者你想手工执行部署步骤,那么你需要复制.NET动态库到一个指定的位置。然后,你可以使用SQL Server Management Studio执行T-SQL的CREATE ASSEMBLY语句,引用刚才路径的.NET动态库,如下面列表所示:

  CREATE ASSEMBLY MyCLRDLL

  FROM 'SERVERNAMECodeLibraryMyCLRDLL.dll'

  CREATE ASSEMBLY命令有一个参数包含了动态库的路径,从该路径可以把动态库加载到SQL Server数据库。这个路径可以是一个本地路径,但是更多时候它可能是一个网络共享文件路径。在执行CREATE ASSEMBLY时,动态库被复制到主数据库中。

  如果程序集被更新或者变成不推荐使用的了,你可以使用DROP ASSEMBLY命令删除程序集。如下所示:

  DROP ASSEMBLY MyCLRDLL

  因为程序集存储在数据库中,当程序集的源代码被修改后程序集被重新编译,必须首先使用DROP ASSEMBLY命令把程序集从数据库中删除掉,然后在更新从SQL Server数据库对象中反射出来之前使用CREATE ASSEMBLY命令重新加载程序集。

  你可以使用视图sys.assemblies查看已经添加到SQL Server 2005中的程序集。SQL如下:

  SELECT * FROM sys.assemblies

  既然程序集是使用外部文件创建的,你还可能想看看用来创建那些程序集的文件。你可以使用sys.assembly_files视图做到这一点。SQL如下:

  SELECT * FROM sys.assembly_files

相关推荐