DotNet开发中关于SQLServer连接的两种方法之比较

 

    在.net中关于SQL Server有两种打开连接的方式,一种是在System.Data.SqlClient命名空间下,相信很多人都是用这里面的方法进行编程的,还有一种是在Microsoft.ApplicationBlocks.Data.SqlHelper命名空间下,方法大致相同,为什么会有两个不同的空间提供相似的功能呢?

    微软在推出.net体系时默认附带了System和Microsoft两个命名空间,Microsoft命名空间正是System命名空间的有力补充,即以当前讨论的话题而言,倘若以System.Data.SqlClient进行编程,将需要用到SqlCommand还有SqlDataAdapter等,需要自己管理数据库的打开和关闭,例如

cn.open();               //打开数据库连接
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);      //数据集关闭时同时关闭连接
dr.Close();               //关闭数据集(同时也关闭了数据库连接)

    然而在Microsoft.ApplicationBlocks.Data.SqlHelper命名空间下根本不用管,同样的操作

SqlDataReader dr = SqlHelper.ExecuteReader(cn,CommandType.Text,querySql);

    两相对照,下一种更称心不是吗?

    既然在微软的体系下编程,最佳选择当然是最大限度的利用微软所提供的东西,.net体系下的Microsoft命名空间可看作是微软对.net提供的基本功能的一个二次开发产品一样,它进一步优化的功能,自然不限于在数据库开发这一部分,还要多花时间好好研究,呵呵难得的是,这个产品还是开源的,有兴趣者可以去msdn上下载,现在已经到2.0版本了.

    愿对此有深刻见解者有教于我.

时间: 2024-10-04 07:05:11

DotNet开发中关于SQLServer连接的两种方法之比较的相关文章

实用技巧:PHP中调用Java类的两种方法

Java语言功能强大,因此在许多情况下在php中来调用Java的功能将十分有用.在php中调用Java语言有两种方法,一种是使用php中的Java扩展模块,另一种是使用minij2ee应用服务器提供的SJOP协议实现.下面我们来比较一下这两种方法各自的特点. 1.php的Java模块 php发布版中包含一个Java扩展模块,可以用来调用Java对象,例如: <?php$system=new Java("java.lang.System");print "Java ver

PowerShell中字符串分行显示的两种方法技巧

  这篇文章主要介绍了PowerShell中字符串分行显示的两种方法技巧,本文直接给出代码实例,需要的朋友可以参考下 复制代码 代码如下: $a="1111111111111111111111101111111111111111111111111111111111111110111111111111111111011111 11111111111111111111111111111111111111111111111111111111111111111111111101111" 字符串

java-请问:用Java代码中实现在一个类编写两种方法,下面的代码接下来怎么办呢?谢谢!

问题描述 请问:用Java代码中实现在一个类编写两种方法,下面的代码接下来怎么办呢?谢谢! 解决方案 啥东西,写两个方法,那你就写两个函数就行了,什么怎么办 解决方案二: 你的类里不就2个方法了吗

清除SQLServer日志的两种方法

server|sqlserver 日志文件满而造成SQL数据库无法写入文件时,可用两种方法:一种方法:清空日志.1.打开查询分析器,输入命令DUMP TRANSACTION 数据库名 WITH NO_LOG2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了. 另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理

在PHP中实现用户身份认证两种方法

用户在设计和维护站点的时候,经常需要限制对某些重要文件或信息的访问.通常,我们可以采用内置于Web于HTTP协议的用户身份验证机制.当访问者浏览受保护页面时,客户端浏览器会弹出对话窗口要求用户输入用户名和密码,对用户的身份进行验证,以决定用户是否有权访问页面.下面用两种方法来说明其实现原理. 一.用HTTP标头来实现 标头是服务器以HTTP协议传送HTML信息到浏览器前所送出的字串.HTTP采用一种挑战/响应模式对试图进入受密码保护区域的用户进行身份验证.具体来说,当用户首次向Web器发出访问受

快速清除SQLServer日志的两种方法

日志文件满而造成SQL数据库无法写入文件时,可用两种方法: 第一种方法:清空日志. 1.打开查询分析器,输入命令 以下是引用片段:DUMP TRANSACTION 数据库名 WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了. 第二种方法有一定的风险性,因为SQL Server的日志文件不是即时写入数据库主文件的,如处理不当,会

清除SQLServer日志的两种方法_MsSql

日志文件满而造成SQL数据库无法写入文件时,可用两种方法: 一种方法:清空日志. 1.打开查询分析器,输入命令 DUMP TRANSACTION 数据库名 WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了. 另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失.

加大MYSQL中的最大连接数的两种方法

mysql的最大连接数默认是100, 这个数值对于并发连接很多的数据库应用是远远不够的,当连接请求大于默认连接数后,就会出现无法连接数据库的错误,因此我们需要把它适当调大一些, 有两种办法可以修改最大连接数,一种是修改safe_mysqld,另一种是直接修改原代码并重新编译.下面我们就分别介绍这两种方法: 1.修改safe_mysqld 找到safe_mysqld编辑它,找到mysqld启动的那两行,在后面加上参数 : -O max_connections=1000 例如 :(其中前面有---的

Android中Intent传递对象的两种方法(Serializable,Parcelable)

Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解我还是照常写了一个简单的Demo,大家就一步一步跟我来吧! 第一步:新建一个Android工程命名为ObjectTranDemo(类比较