DeretCode|

Tips, Trik dan Tutorial
Seputar IT, Coding, Internet Marketing, Keahlian, Pendidikan, Hobi Dan Lainnya
Night :

Membuat Module Sql Helper Untuk Membangun Aplikasi Basis Data - VB.NET

advertisement
        
Tutorial membuat module Sql Helper di VB.NET


    Pada artikel sebelumnya kita telah membahas perbedaan funsional antara module dan class di bahasa pemrograman vb.net pada artikel perbedaan fungsional module dan class. Pada artikel kali ini kita akan belajar membuat sebuah module yang memiliki fungsi atau methode untuk menangani query database sql server. Module ini akan sangat berguna ketika kita ingin membuat sebuah aplikasi berbasis data. Untuk lebih jelasnya kita langsung ke tutorialnya saja.
  1. Buat sebuah module dengan nama SqlHelper, kemudian copy dan paste code berikut ini

Imports System.Data.SqlClient
Module SqlHelper

    Private sqlds As New DataSet
    Dim strcon As String
    
    Sub setConnection(stringConnection As String)
        strcon = stringConnection
    End Sub
    
    Function getAdapter(stringQuery As String) As SqlDataAdapter
        Dim sqlcon = New SqlConnection(strcon)
        sqlcon.Open()
        Dim sqlDataAdapter = New SqlDataAdapter()
        Try
            sqlDataAdapter = New SqlDataAdapter(stringQuery, sqlcon)
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        sqlcon.Close()
        Return sqlDataAdapter
    End Function
    
    Function getDataSet(Optional ByVal stringQuery As String = Nothing, Optional ByVal tableName As String = "Table") As DataSet
        If stringQuery = Nothing Then
            Return sqlds
        End If
        Dim sqlcon = New SqlConnection(strcon)
        sqlcon.Open()
        Try
            Dim dataAdapter = New SqlDataAdapter(stringQuery, sqlcon)
            If sqlds.Tables.Contains(tableName) Then
                sqlds.Tables.Remove(tableName)
            End If
            dataAdapter.Fill(sqlds, tableName)
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        sqlcon.Close()
        Return sqlds
    End Function

    Function getDataTable(Optional ByVal stringQuery As String = Nothing, Optional ByVal tableName As String = "Table") As DataTable
        If stringQuery = Nothing Then
            Return sqlds.Tables(tableName)
        End If
        Dim sqlcon = New SqlConnection(strcon)
        sqlcon.Open()
        Try
            Dim dataAdapter = New SqlDataAdapter(stringQuery, sqlcon)
            If sqlds.Tables.Contains(tableName) Then
                sqlds.Tables.Remove(tableName)
            End If
            dataAdapter.Fill(sqlds, tableName)
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        sqlcon.Close()
        Return sqlds.Tables(tableName)
    End Function
    
    Function getCommand(stringQuery As String) As ModSqlCommand
        Dim msc = New ModSqlCommand
        Try
            Dim sqlcon = New SqlConnection(strcon)
            sqlcon.Open()
            Dim sqlCommand = New SqlCommand(stringQuery, sqlcon)
            msc.sqlConnection = sqlcon
            msc.sqlCommand = sqlCommand
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        Return msc
    End Function
    
    
    Function getDataReader(ByVal stringQuery) As ModSqlRaeder
        Dim msr = New ModSqlRaeder
        Try
            Dim sqlcon = New SqlConnection(strcon)
            sqlcon.Open()
            Dim com = New SqlCommand(stringQuery, sqlcon)
            msr.sqlConnection = sqlcon
            msr.sqlDataReader = com.ExecuteReader()
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        Return msr
    End Function
    Sub ExecuteQuery(ByVal stringQuery)
        Dim sqlcon = New SqlConnection(strcon)
        sqlcon.Open()
        Dim com = New SqlCommand(stringQuery, sqlcon)
        Try
            com.ExecuteNonQuery()
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        sqlcon.Close()
    End Sub

    Class ModSqlCommand
        Public sqlCommand As SqlCommand
        Public sqlConnection As SqlConnection
    End Class

    Class ModSqlRaeder
        Public sqlDataReader As SqlDataReader
        Public sqlConnection As SqlConnection
    End Class
    
End Module
Dari code diatas bisa kita lihat bahwa module  SqlService yang kita buat memiliki beberapa methode dan dua inner class. Oke kita bahas satu-satu.
  1. Methode setConnection
    Sebelum kita menggunakan methode lainnya, kita perlu untuk menconfigurasi koneksi database, menggunakan methode diatas. 
  2. Methode getAdapter
    Methode tersebut berfungsi untuk menangani query select yang nantinya data dikembalikan dalam bentuk SqlDataAdapter.
  3. Methode getDataSet
    Sama hal nya dengan methode getAdapter, methode getDataSet juga berfungsi untuk menangani query select naman pengembalian data dalam bentuk DataSet.
  4. Methode getDataTable
    Sama hal nya dengan dua methode sebelumnya yaitu untuk menangani query select namun pengembalian data sudah dalam bentuk DataTable. Methode ini juga yang nanti akan sering kita gunakan.
  5. Mehode getCommand
    Mehode ini digunakan ketika kita ingin membuat advance command menggunakan SqlCommand, seperti meninsert gambar kedalam database munggunakan sqlCommand.Parameters.AddWithValue. Karena didalam methode tersebut tidak terdapat perintah sqlcon.Close() untuk memutus koneksi, maka setelah menggunkan metode tersebut perlu di dengan cara (InisialiasiGetCommand).sqlConnection.Close()
  6. Methode getDataReader
    Methode ini digunakan untuk menangani query select  jika data yang ditarik terlalu besar sehingga mengakibatkan server kehabisan waktu(time out) untuk menangani query tersebut. Dengan menggunakan methode getDataReader kita tidak perlu khawatir terjadi timeout. Kita juga perlu memutus koneksi setelah semua data telah diambil seperti pada methode getCommand.
  7. Methode ExecuteQuery
    Methode ini berfungsi untuk menangani query tanpa pengembalian(selain query select), seperti update, insert, delete, create table dan lainnya.
Untuk lebih memahami methode-methode diatas, kita akan coba menggunakan methode-methode tersebut sehingga kita tau penggunaannya.
Berikut cara menggunakan methode-methode diatas.

  
Imports System.Data.SqlClient
Module ModuleMain

    Sub Main()
        setConnection("DATA SOURCE=USER\SQLEXPRESS;INITIAL CATALOG=MYAPP; USER ID=sa; PASSWORD=123") 'Mengkonfigurasi koneksi database yang digunakan'

        '1. Penggunaan methode getAdapter'
        Dim ds As New DataSet
        Dim adapter As SqlDataAdapter = getAdapter("select * from users")
        adapter.Fill(ds, "TableName")
        Dim dtable As DataTable = ds.Tables("TableName")
        For Each row As DataRow In dtable.Rows
            Console.WriteLine(row.Item("nama").ToString)
        Next

        '2. Penggunaan methode getDataSet'
        Dim dataset As DataSet = getDataSet("select * from users", "TableName")
        Dim dt As DataTable = dataset.Tables("TableName")
        For Each row As DataRow In dt.Rows
            Console.WriteLine(row.Item("nama").ToString)
        Next

        '3. Penggunaan methode getDataTable'
        Dim datatable As DataTable = getDataTable("select * from users", "TableName")
        For Each row As DataRow In datatable.Rows
            Console.WriteLine(row.Item("nama").ToString)
        Next

        '4. Penggunaan methode getCommand'
        Dim Command As ModSqlCommand = getCommand("update users set nama=@nama where id = @id")
        Command.sqlCommand.Parameters.AddWithValue("@nama", "Newbiestar.com")
        Command.sqlCommand.Parameters.AddWithValue("@id", "100")
        Command.sqlCommand.ExecuteNonQuery()
        Command.sqlConnection.Close()

        '5. Penggunaan methode getDataReader'
        Dim Reader As ModSqlRaeder = getDataReader("select * from users")
        While Reader.sqlDataReader.Read
            Console.WriteLine(Reader.sqlDataReader.GetString("nama"))
        End While
        Reader.sqlConnection.Close()

        '6. Penggunaan methode ExecuteQuery'
        ExecuteQuery("insert into users (id,nama) values('1','Newbieestar.com')")

        Console.ReadLine()
    End Sub

End Module

  
  
Sekian dulu tutorial cara membuat modul sql helper kali ini. Jangan lupa di share jika kalian merasa artikel ini bermanfaat, dan jangan lupa tinggalkan jejak dengan berkomentar dibawah ini. File SqlHelper.vb bisa kalian download di sini.
advertisement



0 Komentar untuk " Membuat Module Sql Helper Untuk Membangun Aplikasi Basis Data - VB.NET"

Silahkan berkomentar dengan baik dan bijak!