博主资料

留言 加为好友 收藏

用户名:  fangpenghappy
来自:  上海 闵行
年龄:  34
爱好: 古典音乐

个人统计

用户名: fangpenghappy
等级: 初来乍到
威望: 705
积分: 1665
在线时间: 47 小时
日志总数: 141
评论数量: 176
访问次数: 489497
建立时间: 2006-09-12
RSS订阅       手机访问

友情链接

最新评论

文章搜索

文章列表

最近访问的人:

深圳办证公司长城..
2008-08-20 16:08:55
Blackwhite
2008-08-16 23:25:52
张莉的博客~壮志凌..
2008-08-15 19:57:33
奥威智动的BI三味堂
2008-08-08 14:37:58
博客周刊专集
2008-08-05 15:26:54
程序人家
2008-08-05 09:33:39
深圳市零壹数据技..
2008-08-02 10:42:44
88blog
2008-08-01 23:12:19
2008秋季广交会展..
2008-08-01 11:27:53
奥运最新资讯 我的..
2008-07-31 23:28:11

日志文章

2007年06月09日 14:29:28

一个我工作时用的数据库类

Public Class clsDataBase


    '数据库类型定义
    Public Enum eDBType
        DB_OLEDB = 0
        DB_SQL = 1
        DB_ORACLE = 2
    End Enum


    '过程名称: DataBaseOpen
    '功能描述:打开数据库
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function DataBaseOpen(ByRef Con_SQL As SqlClient.SqlConnection, _
                                ByVal sUserName As String, _
                                ByVal sPassWord As String, _
                                ByVal sDataName As String, _
                                ByVal sDataURL As String) As Boolean
        Dim sConstring As String


        sC & sDataURL & ";uid=" & sUserName & ";pwd= " & sPassWord & ";database=" & sDataName
        SqlConnectString = sConstring


        Try
            Con_SQL = New SqlClient.SqlConnection(sConstring)
            Con_SQL.Open()
            DataBaseOpen = True
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseOpen = False
        End Try
    End Function


    Public Function DataBaseOpen(ByRef Con_SQL As SqlClient.SqlConnection, _
                                ByVal sConnectionString As String) As Boolean


        Try
            Con_SQL = New SqlClient.SqlConnection(sConnectionString)
            Con_SQL.Open()
            DataBaseOpen = True
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseOpen = False
        End Try
    End Function


    Public Function DataBaseOpen(ByRef Con_OLEDB As OleDb.OleDbConnection, _
                                ByVal sUserName As String, _
                                ByVal sPassWord As String, _
                                ByVal sDataName As String, _
                                Optional ByVal sDataURL As String = ".", _
                                Optional ByVal sConnectString As String = "") As Boolean
        Dim sConstring As String
        If sConnectString.Length = 0 Then
            sC & sDataURL & ";uid=" & sUserName & ";pwd= " & sPassWord & ";database=" & sDataName
        Else
            sConstring = sConnectString
        End If


        Try
            Con_OLEDB = New OleDb.OleDbConnection(sConstring)
            OLEDBConnectString = sConstring


            Con_OLEDB.Open()


            DataBaseOpen = True
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseOpen = False
        End Try
    End Function


    Public Function DataBaseOpen(ByRef Con_OLEDB As OleDb.OleDbConnection, _
                                ByVal sConnectString As String) As Boolean


        Try
            Con_OLEDB = New OleDb.OleDbConnection(sConnectString)
            Con_OLEDB.Open()
            DataBaseOpen = True
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseOpen = False
        End Try
    End Function


    '过程名称: DataBaseClose
    '功能描述:关闭数据库
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function DataBaseClose(ByRef Con_SQL As SqlClient.SqlConnection) As Boolean


        Try
            Con_SQL.Close()
            DataBaseClose = True
            Con_SQL = Nothing
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!()" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseClose = False
        End Try
    End Function


    Public Function DataBaseClose(ByRef Con_OLEDB As OleDb.OleDbConnection) As Boolean


        Try
            Con_OLEDB.Close()
            DataBaseClose = True
            Con_OLEDB = Nothing
        Catch ex As Exception
            Throw New Exception("Error In DataBaseClose!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            DataBaseClose = False
        End Try


    End Function


    '过程名称: GetDataSet
    '功能描述:得到数据集
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function GetDataSet(ByVal sQuery As String, ByVal Con_SQL As SqlClient.SqlConnection) As Data.DataSet


        Dim p_sqlDa As SqlClient.SqlDataAdapter
        Dim p_ds As DataSet


        Try
            p_ds = New DataSet
            p_sqlDa = New SqlClient.SqlDataAdapter(sQuery, Con_SQL)
            p_sqlDa.Fill(p_ds)
            GetDataSet = p_ds
        Catch ex As Exception
            Throw New Exception("Error In GetDataSet!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            GetDataSet = Nothing
        Finally
            p_sqlDa.Dispose()
            p_ds.Dispose()
        End Try
    End Function


    Public Function GetDataSet(ByVal sQuery As String, ByVal Con_OLEDB As OleDb.OleDbConnection) As Data.DataSet


        Dim p_sqlDa As OleDb.OleDbDataAdapter
        Dim p_ds As DataSet


        Try
            p_sqlDa = New OleDb.OleDbDataAdapter(sQuery, Con_OLEDB)
            p_ds = New DataSet
            p_sqlDa.Fill(p_ds)
            GetDataSet = p_ds
        Catch ex As Exception
            Throw New Exception("Error In GetDataSet!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            GetDataSet = Nothing
        Finally
            p_sqlDa.Dispose()
            p_ds.Dispose()
        End Try


    End Function


    '过程名称: GetDataTable
    '功能描述:得到数据表
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function GetDataTable(ByVal sQuery As String, ByVal Con_SQL As SqlClient.SqlConnection) As Data.DataTable


        Dim p_sqlDa As SqlClient.SqlDataAdapter
        Dim p_Table As DataTable


        Try
            p_Table = New DataTable
            p_sqlDa = New SqlClient.SqlDataAdapter(sQuery, Con_SQL)
            p_sqlDa.Fill(p_Table)
            GetDataTable = p_Table
        Catch ex As Exception
            Throw New Exception("Error In GetDataTable!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            GetDataTable = Nothing
        Finally
            p_Table.Dispose()
            If Not p_sqlDa Is Nothing Then
                p_sqlDa.Dispose()
            End If
        End Try


    End Function


    Public Function GetDataTableRows(ByVal sQuery As String) As Integer
        Dim p_sqlDa As SqlClient.SqlDataAdapter
        Dim Con_SQL As SqlClient.SqlConnection
        Dim p_Table As DataTable


        Try
            Con_SQL = New SqlClient.SqlConnection(SqlConnectString)
            p_sqlDa = New SqlClient.SqlDataAdapter(sQuery, Con_SQL)
            p_Table = New DataTable
            p_sqlDa.Fill(p_Table)
            GetDataTableRows = p_Table.Rows.Count
        Catch ex As Exception
            Throw New Exception("Error In GetDataTable!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            GetDataTableRows = 0
        Finally
            p_Table.Dispose()
            p_sqlDa.Dispose()
            Con_SQL.Dispose()
        End Try
    End Function


    Public Function GetDataTable(ByVal sQuery As String, ByVal Con_OLEDB As OleDb.OleDbConnection) As Data.DataTable


        Dim p_OleDa As OleDb.OleDbDataAdapter
        Dim p_Table As DataTable


        Try
            p_Table = New DataTable
            p_OleDa = New OleDb.OleDbDataAdapter(sQuery, Con_OLEDB)
            p_OleDa.Fill(p_Table)
            GetDataTable = p_Table
        Catch ex As Exception
            Throw New Exception("Error In GetDataTable!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            GetDataTable = Nothing
        Finally
            p_Table.Dispose()
            p_OleDa.Dispose()
        End Try
    End Function


    '过程名称: ExecuteCommand
    '功能描述:执行SQL语句
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function ExecuteCommand(ByVal sQuery As String, ByVal Con_SQL As SqlClient.SqlConnection) As Integer


        Dim p_Cmd As SqlClient.SqlCommand
        Try
            p_Cmd = New SqlClient.SqlCommand(sQuery, Con_SQL)
            ExecuteCommand = p_Cmd.ExecuteNonQuery
        Catch ex As Exception
            Throw New Exception("Error In ExecuteCommand!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
        End Try
    End Function


    Public Function ExecuteCommand(ByVal sQuery As String, ByVal Con_OLEDB As OleDb.OleDbConnection) As Integer
        Dim p_Cmd As OleDb.OleDbCommand
        Try
            p_Cmd = New OleDb.OleDbCommand(sQuery, Con_OLEDB)
            ExecuteCommand = p_Cmd.ExecuteNonQuery
        Catch ex As Exception
            Throw New Exception("Error In ExecuteCommand!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
        End Try
    End Function


    '过程名称: ExecuteCommandTran
    '功能描述:执行SQL语句(带有事务的)
    '接收参数:
    '返回参数:
    '创建人员及日期:
    Public Function ExecuteCommandTran(ByVal sQuery As String, ByVal Con_SQL As SqlClient.SqlConnection) As Int32
        Dim sqlTrans As SqlClient.SqlTransaction
        sqlTrans = Con_SQL.BeginTransaction()
        Try
            Dim Command As New SqlClient.SqlCommand


            Command.Connection = Con_SQL
            Command.CommandText = sQuery
            Command.Transaction = sqlTrans
            ExecuteCommandTran = Command.ExecuteNonQuery()
            sqlTrans.Commit()
        Catch ex As Exception
            sqlTrans.Rollback()
            Throw New Exception("Error In ExecuteCommandTran!!!" & vbCrLf & _
                                "Source:" & ex.Source.ToString() + " Message:" + ex.Message.ToString())
            ExecuteCommandTran = -1
        End Try
    End Function
End Class


'说    明: 在实例化本类后,切记要记住释放

Tags: VB.NET   ADO.NET  

类别: DOTNET |  评论(1) |  浏览(5094) |  收藏
发表评论