SqlHelper初探之一

一、基本简介

       SqlHelper是一个基于.NETFramework的数据库操作组件。组件中包含数据库操作方法,目前SqlHelper有很多版本,主要以微软一开始发布的SqlHelper类,后面包含进了Enterprise Library开源包中了。还有一个主要版本是dbhelper.org开源的sqlhelper组件,优点是简洁,高性能,不仅仅支持sqlserver,同时支持sqlserveroracleaccessMysql数据库,也是一个开源项目,提供免费下载。

      SqlHelper用于简化你重复的去写那些数据库连接(SqlConnection,SqlCommand,SqlDataReader等等。SqlHelper 封装过后通常是只需要给方法传入一些参数如数据库连接字符串,SQL参数等,就可以访问数据库了,很方便。

     SqlHelper 类用于通过一组静态方法来封装数据访问功能。该类不能被继承或实例化,因此将其声明为包含专用构造函数的不可继承类。在 SqlHelper 类中实现的每种方法都提供了一组一致的重载。这提供了一种很好的使用SqlHelper类来执行命令的模式,同时为开发人员选择访问数据的方式提供了必要的灵活性。每种方法的重载都支持不同的方法参数,因此开发人员可以确定传递连接、事务和参数信息的方式。

    接下来让我们通过图来进一步了解它


    以上主要通过SqlHelper的一些基本方法和注意事项来进行解释,接下来我们进入更深一层的学习:


    我感觉这两种书写方法基本上相同,都是通过一组静态方法来封装数据访问功能只不过面向对象更全面点,加入了引用,操作稍微复杂了点。比如:

    静态方式:

//查询语句执行:

DataTable dt=SqlServerHelper.ReadTable("select *from table1");

//插入语句执行:

SqlServerHelper.ExecuteNonQuery("insert into[students] values(@student_name,@class)",

SqlServerHelper.CreateInputParameter("@student_name",SqlDbType.NVarChar, 100, txt_student_name_sqlserver.Text),

SqlServerHelper.CreateInputParameter("@class",SqlDbType.NVarChar, 100, txt_class_sqlserver.Text)

);

    面向对象方式:

using (SqlServerHelper helper = new SqlServerHelper())

{

helper.Command.CommandText = "delete from[Students] where stid=@stid";

helper.AddParameter("@stid", SqlDbType. Int,student_id);

helper.Open();

helper.ExecuteNoneQuery();

helper.Command.Parameters.Clear();

helper.Command.CommandText = "select * from[Students]";return helper.ReadTable();

}

    大家通过对比,看到了两者的区别和联系了吧,另外想想我们的机房收费系统用的是那种方式呢?


 

    这些主要的方法,都需要我们在实践中进一步理解和运用。


    注意事项其实就是告诉我们在运用的过程中经常犯的一些错误,避免弯路,站在巨人的肩膀上。

    以上只是对SqlHelper一些简单的了解,接下来我们将更深一步的了解。那就是如何写SqlHelper以及如何运用于实践?那就请看下一篇博客。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值