在敲机房收费重构版的时候,用到了sqlhelper,当时不知道怎么开始,各种听别人说,张晗说,一定要用sqlhelper,特别好用,我当时没有用balabala~当时一听,哎哎哎,这个高级,要搞一搞,就去研究,当时连sqlhelper写在哪一层都搞不清,更不用说看懂了,查博客,各种查,看看,唉,这个不错,抄一下,然后抄到自己的程序里面,抄完了,怎么用也不会,现在再来看,sqlhelper的确是便利了不少,自己敲到现在,也愿意研究一下了。
先来科普一下:SqlHelper是一个基于·NET Framework的数据库操作组件。组件中包含数据库操作方法。SqlHelper用于简化你重复的去写那些数据库连接(SqlConnection),SqlCommand,SqlDataReader等等。SqlHelper 封装过后通常是只需要给方法传入一些参数如数据库连接字符串,SQL参数等,就可以访问数据库了,很方便。
再来看一下sqlhelper的代码:
'获取数据库连接字符串 '在这里需要添加system.Configuration.dll文件的引用 Private ReadOnly strConn As String = ConfigurationManager.AppSettings("strConn") '新建链接 Dim connSql As SqlConnection = New SqlConnection(strConn) '定义命令 Dim cmdSql As New SqlCommand Public Function ExecuteAddDelUpdated(ByVal cmdText As String, ByVal cmdType As CommandType, ByVal sqlParams As SqlParameter()) As Boolean cmdSql.Parameters.AddRange(sqlParams) '将参数传入 cmdSql.CommandType = cmdType '确定语句类型,是sql还是Oracle还是其他类型 cmdSql.CommandText = cmdText '将sql语句传给cmdsql cmdSql.Connection = connSql '设置连接,全局变量 '执行查询 Try connSql.Open() '打开链接 Return cmdSql.ExecuteNonQuery() '执行查询 cmdSql.Parameters.Clear() '清除参数 Catch ex As Exception Return 0 Finally Call CloseConnection(connSql) Call CloseSQLCommand(cmdSql) End Try End Function
以上就是一个带参数的sqlhelper的增删改语句,一个完整的sqlhelper应该包括:连接数据库,带参数和不带参数的查询与增删改,关闭数据库链接。
sqlhelper其实就是对咱们链接查询数据库的抽象总结,分为带参数的和不带参数的查询与增删改,所以很多的sqlhelper都可以直接拿来用,我查了很多博客,发现大家的sqlhelper其实大同小异,因为原理都相同。当时看sqlhelper觉得太难了,一点都看不懂,现在再来看,想象中的困难最困难。