基于.NET平台的分层架构实战(八)—数据访问层的第二种实现:SQLServer+存储过程

     在上一篇中,讨论了使用SQL构建数据访问层的方法,并且针对的是Access数据库。而这一篇中,将要创建一个针对SQLServer数据库的数据访问层,并且配合存储过程实现。

      曾经有朋友问我使用SQL和存储过程在效率上的差别,惭愧的是我对这方面没有研究,也没有实际做过测试。通过查阅资料,发现在一般情况下,存储过程的效率由于使用SQL,但是也不绝对,也发现有的朋友测试时发现在特定情况下SQL的效率优于存储过程,所以这个问题不能一概而论。

      好,废话不多说,这里先列出使用存储过程构建数据访问层的一般步骤:
      1.创建新工程
      2.创建数据库
      3.编写相应存储过程
      4.编写数据库辅助类
      5.实现数据访问层

创建新工程
      在开始所有开发工作前,我们需要在解决方案下新建一个工程,叫SQLServerDAL,用于存放所有SQLServer数据访问层的代码。

创建数据库
      首先,我们要根据前文设计的数据库,在SQLServer中创建相应的数据库及数据表。我使用的是SQLServer2005,使用企业管理器创建,创建方法不再赘述。

编写存储过程
      数据库创建完成后,我们就要编写存储过程了。由于数据访问层接口已经确定,所以需要哪些存储过程也很好确定。例如数据访问层接口中有一个添加管理员方法,那么就一定有一个存储过程实现这个功能。
      还是以管理员模块为例,经过简单分析,需要一下存储过程:

      插入管理员记录
      删除管理员记录
      更新管理员信息
      按ID取得管理员记录
      按用户名及密码取得管理员记录
      按用户名取得管理员记录
      取得全部管理员记录

      创建这些存储过程的SQL代码如下:
 

插入管理员记录


 

删除管理员记录


 

修改管理员信息


 

按ID取得管理员


 

按用户名和密码取得管理员


 

按用户名取得管理员


 

取得全部管理员信息


编写数据库辅助类
      由于访问数据库的代码很相似,这里我们仍需要编写一个数据库辅助类,来将常用代码封装起来,方便复用。虽然在这里只使用到了存储过程,但是为了扩展性考虑,这个数据库辅助类仍然包含了通过SQL访问数据库的方法。具体实现如下:

SQLServerDALHelper.cs:
 

SQLServerDALHelper


实现数据访问层
      最后仍以管理员模块为例,看一下具体数据访问层的实现。

AdminDAL.cs:
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值