vb.net—SQLHelper类的使用

vb.net—SQLHelper类的使用,第1张

概述SqlHelper用于简化你重复的去写那些数据库连接SqlConnection,SqlCommand,SqlDataReader等等。SqlHelper 封装过后通常是只需要给方法传入一些参数如数据库连接字符串,SQL参数等,就可以访问数据库了,很方便。 在应用之前的配置文件设置数据库连接字符串,增加程序可移植性和代码的简洁。 </connectionStrings> <appSettings


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

在应用之前的配置文件设置数据库连接字符串,增加程序可移植性和代码的简洁。

</connectionStrings>  <appSettings>    <add key="ConnStr" value="Data Source=*;Initial Catalog=Charge;User ID=sa;Pwd=*"/>  </appSettings>

SQLHelper类
imports System.Dataimports System.Data.sqlClIEntimports System.Configuration  '必须要在管理器中添加引用  ''' <summary>''' sqlHelper类是专门提供给广大用户用于高性能、可升级和最佳练习的sql数据 *** 作''' </summary>''' <remarks></remarks>Public Class sqlHelper    '定义变量      '获得数据库的连接字符串      Private Readonly strConnection As String = ConfigurationManager.AppSettings("ConnStr")    '设置连接      Dim conn As sqlConnection = New sqlConnection(strConnection)    '定义cmd命令      Dim cmd As New sqlCommand    ''' <summary>      ''' 执行增删改三个 *** 作,(有参)返回值为Boolean类型,确认是否执行成功      ''' </summary>      ''' <param name="cmdText">需要执行语句,一般是SQL语句,也有存储过程</param>      ''' <param name="cmdType">判断SQL语句的类型,一般都不是存储过程</param>      ''' <param name="paras">参数数组,无法确认有多少参数</param>      ''' <returns></returns>      ''' <remarks></remarks>      Public Function ExecAddDelUpdate(ByVal cmdText As String,ByVal cmdType As CommandType,ByVal paras As sqlParameter()) As Integer        '将传入的值,分别为cmd的属性赋值          cmd.Parameters.AddRange(paras)   '将参数传入          cmd.CommandType = cmdType            '设置一个值,解释cmdText          cmd.Connection = conn                '设置连接,全局变量          cmd.CommandText = cmdText            '设置查询的语句          Try            conn.open()                      '打开连接              Return cmd.ExecuteNonquery()     '执行增删改 *** 作              cmd.Parameters.Clear()           '清除参数          Catch ex As Exception            Return 0                         '如果出错,返回0          Finally            Call CloseConn(conn)            Call CloseCmd(cmd)        End Try    End Function    ''' <summary>      ''' 执行增删改三个 *** 作,(无参)      ''' </summary>      ''' <param name="cmdText">需要执行语句,一般都不是存储过程</param>      ''' <returns>Interger,受影响的行数</returns>      ''' <remarks>2013年2月2日8:19:59</remarks>      Public Function ExecAddDelUpdateNo(ByVal cmdText As String,ByVal cmdType As CommandType) As Integer        '为要执行的命令cmd赋值          cmd.CommandText = cmdText       '先是查询的SQL语句          cmd.CommandType = cmdType       '设置SQL语句如何解释          cmd.Connection = conn           '设置连接          '执行 *** 作          Try            conn.open()            Return cmd.ExecuteNonquery()        Catch ex As Exception            Return 0        Finally            Call CloseConn(conn)            Call CloseCmd(cmd)        End Try    End Function    ''' <summary>      ''' 执行查询的 *** 作,(有参),参数不限      ''' </summary>      ''' <param name="cmdText">需要执行语句,一般都不是存储过程</param>      ''' <param name="paras">传入的参数</param>      ''' <returns></returns>      ''' <remarks></remarks>      Public Function ExecSelect(ByVal cmdText As String,ByVal paras As sqlParameter()) As Datatable        Dim sqlAdapter As sqlDataAdapter        Dim dt As New Datatable        Dim ds As New DataSet        '还是给cmd赋值          cmd.CommandText = cmdText        cmd.CommandType = cmdType        cmd.Connection = conn        cmd.Parameters.AddRange(paras)  '参数添加          sqlAdapter = New sqlDataAdapter(cmd)  '实例化adapter          Try            sqlAdapter.Fill(ds)           '用adapter将dataSet填充               dt = ds.tables(0)             'datatable为dataSet的第一个表              cmd.Parameters.Clear()        '清除参数          Catch ex As Exception            MsgBox("查询失败",CType(vbOKOnly + MsgBoxStyle.Exclamation,MsgBoxStyle),"警告")        Finally                            '最后一定要销毁cmd              Call CloseCmd(cmd)        End Try        Return dt    End Function    ''' <summary>      ''' 执行查询的 *** 作,一般都不是存储过程</param>      ''' <returns>datatable,查询到的表格</returns>      ''' <remarks></remarks>      Public Function ExecSelectNo(ByVal cmdText As String,ByVal cmdType As CommandType) As Datatable        Dim sqlAdapter As sqlDataAdapter        Dim ds As New DataSet        '还是给cmd赋值          cmd.CommandText = cmdText        cmd.CommandType = cmdType        cmd.Connection = conn        sqlAdapter = New sqlDataAdapter(cmd)  '实例化adapter          Try            sqlAdapter.Fill(ds)           '用adapter将dataSet填充               Return ds.tables(0)             'datatable为dataSet的第一个表          Catch ex As Exception            Return nothing        Finally                            '最后一定要销毁cmd              Call CloseCmd(cmd)        End Try    End Function    ''' <summary>      ''' 关闭连接      ''' </summary>      ''' <param name="conn">需要关闭的连接</param>      ''' <remarks></remarks>      Public Sub CloseConn(ByVal conn As sqlConnection)        If (conn.State <> ConnectionState.Closed) Then  '如果没有关闭              conn.Close()                    '关闭连接              conn = nothing                  '不指向原对象          End If    End Sub    ''' <summary>      ''' 关闭命令      ''' </summary>      ''' <param name="cmd">需要关闭的命令</param>      ''' <remarks></remarks>      Public Sub CloseCmd(ByVal cmd As sqlCommand)        If Not Isnothing(cmd) Then          '如果cmd命令存在              cmd.dispose()                   '销毁              cmd = nothing        End If    End SubEnd Class
总结

以上是内存溢出为你收集整理的vb.net—SQLHelper类的使用全部内容,希望文章能够帮你解决vb.net—SQLHelper类的使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1280085.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存