Mudahnya membuat Class untuk CRUD Database di VB.Net/VB 2010

Selamat malam pembaca,
Kalau kemarin saya sudah pernah membahas tentang bagaimana caranya membuat Class untuk CRUD database menggunakan VB6, kali ini saya akan membahas tentang bagaimana mudahnya membuat sebuah Class untuk CRUD Database menggunakan VB.Net, sebagai contoh disini saya menggunakan Visual Basic 2010. Ada banyak cara bagaimana mengolah sebuah CRUD Database dalam membuat sebuah Aplikasi atau Program. Tergantung selera kita bagaimana cara kita menyusun code, misal contoh seperti dibawah ini :

sql = "INSERT INTO tbldokter(kodedokter,namadokter,alamat) VALUES( " & _
    "'" &
Me.txtKodeDokter.Text & "'," & _
    "'" &
Me.txtNamaDokter.Text & "'," & _
    "'" &
Me.txtAlamat.Text & "')"

Sedangkan apabila kita menggunakan sebuah Class Database maka cukup menuliskan kode seperti dibawah ini :
 
Dim simpan As New clsDB
simpan.QueryInsert(strTable, isiTable) 

 
Tentu saja tidak sesederhana itu, kita perlu mendeklarasikan sebuah variabel  String nya. Oke langsung saja kita buat dulu Class nya, untuk contoh penggunaannya akan saya bahas diartikel selanjutnya. Silahkan buat Modul dan beri nama "clsDB.vb". Kemudian masukkan kode seperti dibawah ini :

Imports System.IO
Imports System.Data.Odbc
Imports System.Configuration
Public Class clsDB
    Dim connString As String = ConfigurationManager.ConnectionStrings("strconn").ConnectionString()
    Dim SQL As String

    'Fungsi koneksi ke database
    Public Function ConnectDB(ByVal MySQL As String) As DataSet
        Dim cnn As OdbcConnection
        Dim da As OdbcDataAdapter
        Dim ds As DataSet = New DataSet()

        Try
            cnn = New OdbcConnection(connString)
            da = New OdbcDataAdapter(MySQL, cnn)
            da.Fill(ds)
        Catch ex As Exception
        End Try
        Return ds
    End Function

    'Fungsi eksekusi query
    Public Function ExecuteQuery(ByVal mySQL As String) As String
        Dim cmd As OdbcCommand
        Dim cnn As OdbcConnection
        Dim result As String = ""
        Try
            cnn = New OdbcConnection(connString)
            cnn.Open()
            cmd = New OdbcCommand(mySQL, cnn)
            cmd.ExecuteNonQuery()
            cnn.Close()
            result = "SUKSES"
        Catch ex As Exception
            result = "GAGAL"
        End Try
        Return result
    End Function

    'Fungsi untuk eksekusi query select semua kolom
    Public Function QuerySelectAll(ByVal namaTabel As String) As DataSet
        SQL = "SELECT * FROM " & namaTabel
        Return Me.ConnectDB(SQL)
    End Function

    'Overload fungsi untuk eksekusi query select semua kolom dengan where
    Public Function QuerySelectAll(ByVal namaTabel As String, ByVal kondisi As String) As DataSet
        SQL = "SELECT * FROM " & namaTabel & " " & kondisi
        Return Me.ConnectDB(SQL)
    End Function

    'Fungsi untuk eksekusi query select dengan kolom spesifik
    Public Function QuerySelect(ByVal namaKolom As String(), ByVal namaTabel As String) As DataSet
        Dim i As Integer
        SQL = "SELECT "
        For i = 0 To namaKolom.Length - 1
            SQL &= namaKolom(i)
            If (i < namaKolom.Length - 1) Then
                SQL &= ","
            End If
        Next
        SQL &= " FROM " & namaTabel
        Return Me.ConnectDB(SQL)
    End Function

    'Overload fungsi untuk eksekusi query select dengan kolom spesifik dengan where
    Public Function QuerySelect(ByVal namaKolom As String(), ByVal namaTabel As String, ByVal kondisi As String) As DataSet
        Dim i As Integer
        SQL = "SELECT "
        For i = 0 To namaKolom.Length - 1
            SQL &= namaKolom(i)
            If (i < namaKolom.Length - 1) Then
                SQL &= ","
            End If
        Next
        SQL &= " FROM " & namaTabel & " WHERE " & kondisi
        Return Me.ConnectDB(SQL)
    End Function

    'Fungsi eksekusi query insert
    Public Function QueryInsert(ByVal namaTabel As String, ByVal isiTabel As String()) As String
        Dim i As Integer
        SQL = "INSERT INTO " & namaTabel & " VALUES("
        For i = 0 To isiTabel.Length - 1
            SQL &= "'" & isiTabel(i) & "'"
            If (i < isiTabel.Length - 1) Then
                SQL &= ","
            End If
        Next
        SQL &= ")"
        Return Me.ExecuteQuery(SQL)
    End Function

    'Fungsi eksekusi query update
    Public Function QueryUpdate(ByVal namaTabel As String, ByVal namaKolom As String(), ByVal isiTabel As String(), ByVal kondisi As String) As String
        Dim i As Integer
        SQL = "UPDATE " & namaTabel & " SET "
        For i = 0 To namaKolom.Length - 1
            SQL &= namaKolom(i) & "='" & isiTabel(i) & "'"
            If (i < namaKolom.Length - 1) Then
                SQL &= ","
            End If
        Next
        SQL &= " WHERE " & kondisi
        Return Me.ExecuteQuery(SQL)
    End Function

    'Fungsi eksekusi query delete
    Public Function QueryDelete(ByVal namaTabel As String) As String
        SQL = "DELETE FROM " & namaTabel
        Return Me.ExecuteQuery(SQL)
    End Function

    'Overload fungsi eksekusi query delete dengan where
    Public Function QueryDelete(ByVal namaTabel As String, ByVal kondisi As String) As String
        SQL = "DELETE FROM " & namaTabel & " WHERE " & kondisi
        Return Me.ExecuteQuery(SQL)
    End Function

    Sub ExecuteQuery(ByVal p1 As String, ByVal strWHERE As String)
        Throw New NotImplementedException
    End Sub

End Class


Fungsi-fungsi diatas sudah ada penjelasannya, seperti Query Insert, Update, dan Delete. Selain itu juga ada Query Select yang fungsinya untuk menampilkan data. Class tersebut saya dapatkan dari sumber berikut dengan beberapa modifikasi nama atau text untuk memudahkan saya yang terbiasa dalam memanggil fungsi pada Class Database tersebut

Sumber : https://blogagun.wordpress.com/2011/12/25/membuat-class-database-untuk-mempermudah-pembuatan-crud

0 Response to "Mudahnya membuat Class untuk CRUD Database di VB.Net/VB 2010"

Post a Comment