一个简单的数据操作类

一个简单的数据操作类 今天刚写的一个简单的数据操作类,供大家参考。 Imports System Imports System.Data Imports System.Data.SqlClient Namespace DataAccess Public Class DataAccess Public Sub New() Dim connectString As String = System.Configuration.ConfigurationSettings.AppSettings("strSqlconn") Me.conn = New SqlConnection(connectString) '构造函数 End Sub Public Sub New(ByVal connectString As String) Me.conn = New SqlConnection(connectString) '构造函数 End Sub Private conn As SqlConnection Public Property Connection() As SqlConnection Get Return conn End Get Set(ByVal Value As SqlConnection) conn = Value End Set End Property Public Sub OpenConnection() '打开连接 If Not (Me.conn Is Nothing) AndAlso Me.conn.State = ConnectionState.Closed Then Me.conn.Open() Else If Me.conn Is Nothing Then Throw New Exception("Connection 还没有初始化") End If End If End Sub Public Sub CloseConnection() '关闭连接 If Not (Me.conn Is Nothing) AndAlso Me.conn.State = ConnectionState.Open Then Me.conn.Close() Else If Me.conn Is Nothing Then Throw New Exception("Connection 还没有初始化") End If End If End Sub Public Function ExecuteReader(ByVal NameOfProc As String, ByVal parameters As SqlParameter()) As SqlDataReader '返回数据阅读器,用于执行存储过程 Dim command As SqlCommand = New SqlCommand(NameOfProc) command.Connection = Me.conn command.CommandType = CommandType.StoredProcedure Dim mySqlParameter As SqlParameter For Each mySqlParameter In parameters command.Parameters.Add(mySqlParameter) Next Return command.ExecuteReader End Function Public Function ExecuteReader(ByVal sql As String) As SqlDataReader '返回数据阅读器,用于执行数据命令 Dim command As SqlCommand = New SqlCommand(sql) command.Connection = Me.conn Me.OpenConnection() Return command.ExecuteReader End Function Public Function ExecuteNonQuery(ByVal NameOfProc As String, ByVal parameters As SqlParameter()) As Integer '返回受影响的行数,用于执行存储过程 Dim command As SqlCommand = New SqlCommand(NameOfProc) command.Connection = Me.conn command.CommandType = CommandType.StoredProcedure Dim mySqlParameter As SqlParameter For Each mySqlParameter In parameters command.Parameters.Add(mySqlParameter) Next Me.OpenConnection() Try Return command.ExecuteNonQuery() Finally Me.CloseConnection() End Try End Function Public Function ExecuteNonQuery(ByVal sql As String) As Integer '返回受影响的行数,用于执行数据命令 Dim command As SqlCommand = New SqlCommand(sql) command.Connection = Me.conn Me.OpenConnection() Try Return command.ExecuteNonQuery Finally Me.CloseConnection() End Try End Function Public Function FillDataSet(ByVal dataset As DataSet, ByVal NameOfProc As String, ByVal parameters As SqlParameter()) As Integer '返回数据集,用于执行存储过程 Dim command As SqlCommand = New SqlCommand(NameOfProc) command.Connection = Me.conn command.CommandType = CommandType.StoredProcedure Dim mySqlParameter As SqlParameter For Each mySqlParameter In parameters command.Parameters.Add(mySqlParameter) Next command.Connection = Me.conn Try Me.OpenConnection() Dim adapter As SqlDataAdapter = New SqlDataAdapter(command) Return adapter.Fill(dataset) Finally Me.CloseConnection() End Try End Function Public Function FillDataSet(ByVal dataset As DataSet, ByVal sql As String) As Integer '返回数据集,用于执行数据命令 Dim command As SqlCommand = New SqlCommand(sql) command.Connection = Me.Connection Try Me.OpenConnection() Dim adapter As SqlDataAdapter = New SqlDataAdapter(command) Return adapter.Fill(dataset) Finally Me.CloseConnection() End Try End Function End Class End Namespace
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值