[VB]SqlHelper|DBHelper数据通用访问类 for VB
2016-07-21 17:41
302 查看
本人一直从事C#编程,刚接触VB,写了简单的基于SQLServer的数据通用访问类vb版,供有需要的同学参考
Imports System.Data
Imports System.Data.SqlClient
''' <summary>
''' Copyright (C) 2016 cyj
''' VB数据通用访问类(基于SQLServer)
''' 可以根据自己项目的需要进行修改
''' </summary>
''' <remarks>一个简单的VB数据通用访问类,希望帮到有需要的同仁</remarks>
Public Class SqlHelper
Protected Shared connStr As String = "Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=TestDB"
''' <summary>
''' 执行sql语句,返回收影响的行数
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>受影响的行数</returns>
''' <remarks>一般用于增删改操作</remarks>
Public Shared Function ExecuteNonQuery(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Return cmd.ExecuteNonQuery()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行一条sql语句,返回查询结果
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>查询结果</returns>
''' <remarks>用于单一结果查询</remarks>
Public Shared Function GetSingle(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Return cmd.ExecuteScalar()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行一条sql语句,返回查询结果是否存在
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>Boolean类型 true OR false</returns>
''' <remarks>用于检验数据是否存在,如登录或用户名判重</remarks>
Public Shared Function CheckExistsRecord(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Dim reader As SqlDataReader
reader = cmd.ExecuteReader()
Return reader.Read()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 查询指定的表是否存在
''' </summary>
''' <param name="tablename">要查询的表名</param>
''' <returns>Boolean类型 true OR false</returns>
''' <remarks>用于检验数据库中表是否存在</remarks>
Public Shared Function CheckExistsTable(ByVal tablename As String)
Dim sql As String = "select count(1) from sysobjects where name = '" + tablename + "'"
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
If cmd.ExecuteScalar() = 0 Then
Return False
Else
Return True
End If
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行sql语句,返回结果集的查询
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>查询结果集DataSet</returns>
''' <remarks></remarks>
Public Shared Function GetDataSet(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Try
conn.Open()
Dim ds As New DataSet
Dim da = New SqlDataAdapter(sql, conn)
da.Fill(ds, "ds")
Return ds
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
conn.Close()
conn.Dispose()
End Try
End Function
End Class
****************************************************************
如果对您有帮助,记得下方点赞哦~~~
Imports System.Data
Imports System.Data.SqlClient
''' <summary>
''' Copyright (C) 2016 cyj
''' VB数据通用访问类(基于SQLServer)
''' 可以根据自己项目的需要进行修改
''' </summary>
''' <remarks>一个简单的VB数据通用访问类,希望帮到有需要的同仁</remarks>
Public Class SqlHelper
Protected Shared connStr As String = "Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=TestDB"
''' <summary>
''' 执行sql语句,返回收影响的行数
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>受影响的行数</returns>
''' <remarks>一般用于增删改操作</remarks>
Public Shared Function ExecuteNonQuery(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Return cmd.ExecuteNonQuery()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行一条sql语句,返回查询结果
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>查询结果</returns>
''' <remarks>用于单一结果查询</remarks>
Public Shared Function GetSingle(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Return cmd.ExecuteScalar()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行一条sql语句,返回查询结果是否存在
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>Boolean类型 true OR false</returns>
''' <remarks>用于检验数据是否存在,如登录或用户名判重</remarks>
Public Shared Function CheckExistsRecord(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
Dim reader As SqlDataReader
reader = cmd.ExecuteReader()
Return reader.Read()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 查询指定的表是否存在
''' </summary>
''' <param name="tablename">要查询的表名</param>
''' <returns>Boolean类型 true OR false</returns>
''' <remarks>用于检验数据库中表是否存在</remarks>
Public Shared Function CheckExistsTable(ByVal tablename As String)
Dim sql As String = "select count(1) from sysobjects where name = '" + tablename + "'"
Dim conn As New SqlConnection(connStr)
Dim cmd As New SqlCommand(sql, conn)
Try
conn.Open()
If cmd.ExecuteScalar() = 0 Then
Return False
Else
Return True
End If
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
cmd.Dispose()
conn.Close()
conn.Dispose()
End Try
End Function
''' <summary>
''' 执行sql语句,返回结果集的查询
''' </summary>
''' <param name="sql">sql语句</param>
''' <returns>查询结果集DataSet</returns>
''' <remarks></remarks>
Public Shared Function GetDataSet(ByVal sql As String)
Dim conn As New SqlConnection(connStr)
Try
conn.Open()
Dim ds As New DataSet
Dim da = New SqlDataAdapter(sql, conn)
da.Fill(ds, "ds")
Return ds
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
conn.Close()
conn.Dispose()
End Try
End Function
End Class
****************************************************************
如果对您有帮助,记得下方点赞哦~~~