Senin, 31 Juli 2017

Koneksi Access

CRUD
CREATE – UPDATE – DELETE



HAL – HAL YANG PERLU DIPERHATIKAN :

1.      Usahakan anda telah membuat database dengan benar. Seperti mengatur data type dengan benar dan mengatur field size nya. Tujuan dari mengatur di atas yaitu untuk mencegah terjadinya kesalahan pada saat memasukkan kode program pada Visual Studio.
2.      Kita harus santai tapi teliti dalam mengetikkan kode program pada Visual Studio.
3.      Yang perlu diperhatikan yaitu tanda baca, hal ini dikarenakan banyak orang yang sepele dengan tanda baca, tetapi ujungnya program mereka tidak jalan atau terjadi kesalahan (Error). Jadi kita harus memperhatikan tanda baca.
4.      Pahami apa yang kalian ketikkan di dalam program kalian, karena jika kalian tidak paham bagaimana orang lain bisa paham dengan apa yang kalian buat. Tujuan dari memahami kode program yang kita ketik yaitu supaya kita mengerti maksud dari tiap baris kode program yang kita ketik sehingga kita tidak asal main COPAS aja.
5.      Sediakan minuman dan cemilan untuk menemani kita kerja karena untuk mengerjakan program kita tidak boleh buru-buru. Santai aja asalkan kita paham dengan apa yang kita kerjakan.



CRUD
CREATE – UPDATE – DELETE
1.      Disini saya sudah membuat database nya.
2.      Nama database           : DB_SEKOLAH
3.      Nama table                 : SISWA


4.      Sekarang buka Microsoft Visual Studio dan buat Project Baru dengan nama Program_Koneksi_Access


5.      Tambahkan Toolbox dan atur Properties nya seperti dibawah ini.                                      JANGAN SAMPAI SALAH


Toolbox
Properties
Form1
 Name
SISWA

FormBorderStyle
FixedDialog
MaximizeBox
False
StartPosition
CenterScreen
Text
SISWA
Label1
Text
NIS
Label2
Text
Nama Siswa
Label3
Text
Tempat Lahir
Label4
Text
Tanggal Lahir
Label5
Text
Jenis Kelamin
Label6
Text
Agama
Label7
Tetx
Nomor Hp.
Label8
Text
Alamat
Textbox1
Name
TBNIS
Textbox2
Name
TBNAMA
Textbox3
Name
TBTEMPAT
Textbox4
Name
TBTANGGAL
Combobox1
Name
CBJENISKELAMIN

DropDownStyle
DropDownList
Combobox2
Name
CBAGAMA

DropDownStyle
DropDownList
Textbox5
Name
TBNOHP
Textbox6
Name
TBALAMAT
Button1
Name
BNSIMPAN

Text
Simpan
Button2
Name
BNEDIT

Text
Edit
Button3
Name
BNHAPUS

Text
Hapus
Button4
Name
BNKELUAR

Text
Keluar
DataGridView1
Name
DGSISWA

6.      Jangan lupa isikan item pada CBJENISKELAMIN dan CBAGAMA caranya seperti di bawah ini :
Pertama Klik dahulu CBJENISKELAMIN atau CBAGAMA lalu ……





Masukkan item seperti gambar dibawah ini…


7.      Setelah semuanya sudah selesai di desain, sekarang kita tinggal masukkan kode programnya…
8.      Tapi saya sarankan jangan COPAS ea, Supaya kamu tahu dan paham maksud dari setiap kode program yang kamu ketik.
9.     Kode program :

Sebelum kita mengetikkan kode program, sebelumnya kita copy dulu Provider nya.
Caranya yaitu…….
·         Klik Data >>> Klik Add New Data Source…. >>>

·         Klik Next  >>  Klik Next  >>  Klik New Connection….   >> Pilih Microsoft Access Database File >> Klik  Continue
·         Klik Browse……   >> lalu cari dimana database anda berada  >>Lalu Klik Open
·         Klik Advanced

·         Copy Provider


·         Setelah di Copy ketikkan code berikut ini :

Kode Program CRUD :

Imports System.Data.OleDb

Public Class Form1
   
Public con As New OleDbConnection
    Public cmd As New OleDbCommand
    Public da As New OleDbDataAdapter
    Public dr As OleDbDataReader
    Public ds As DataSet
    Public str As String

    Sub koneksi()
        Try
            str = " PASTEKAN PROVIDER YANG TELAH KITA COPY TADI"
            con = New OleDbConnection(str)
            If con.State = ConnectionState.Closed Then
                con.Open()
            End If
        Catch EX As Exception
            MsgBox(EX.ToString)
        End Try
    End Sub

    Sub tampil()
        Try
            da = New OleDbDataAdapter("SELECT * FROM SISWA", con)
            ds = New DataSet
            da.Fill(ds, "SISWA")
            DGSISWA.DataSource = ds.Tables("SISWA")
        Catch EX As Exception
            MsgBox(EX.ToString)
        End Try
    End Sub

    Sub bersih()
        TBNIS.Clear()
        TBNAMA.Clear()
        TBTEMPAT.Clear()
        TBTANGGAL.Clear()
        CBJENISKELAMIN.Text = Nothing
        CBAGAMA.Text = Nothing
        TBNOHP.Clear()
        TBALAMAT.Clear()

        TBNIS.Focus()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        koneksi()
        tampil()
    End Sub

    Private Sub DGSISWA_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGSISWA.CellContentClick
       
On Error Resume Next
        TBNIS.Text = DGSISWA.CurrentRow.Cells(0).Value
        TBNAMA.Text = DGSISWA.CurrentRow.Cells(1).Value
        TBTEMPAT.Text = DGSISWA.CurrentRow.Cells(2).Value
        TBTANGGAL.Text = DGSISWA.CurrentRow.Cells(3).Value
        CBJENISKELAMIN.Text = DGSISWA.CurrentRow.Cells(4).Value
        CBAGAMA.Text = DGSISWA.CurrentRow.Cells(5).Value
        TBNOHP.Text = DGSISWA.CurrentRow.Cells(6).Value
        TBALAMAT.Text = DGSISWA.CurrentRow.Cells(7).Value

    End Sub

    Private Sub BNSIMPAN_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BNSIMPAN.Click
       
If TBNIS.Text = "" Or TBNAMA.Text = "" Or TBTEMPAT.Text = "" Or TBTANGGAL.Text = "" Or CBJENISKELAMIN.Text = Nothing Or CBAGAMA.Text = Nothing Or TBNOHP.Text = "" Or TBALAMAT.Text = "" Then
            MsgBox("Maaf Data Tidak Lengkap..!!!")
        Else
            Try
                With cmd
                    .Connection = con
                    .CommandText = "INSERT INTO SISWA(NIS,NAMA,TMP_LAHIR,TGL_LAHIR,JEN_KEL,AGAMA,NO_HP,ALAMAT)VALUES(@0,@1,@2,@3,@4,@5,@6,@7)"
                    .Parameters.Add("@0", OleDbType.VarChar).Value = TBNIS.Text
                    .Parameters.Add("@1", OleDbType.VarChar).Value = TBNAMA.Text
                    .Parameters.Add("@2", OleDbType.VarChar).Value = TBTEMPAT.Text
                    .Parameters.Add("@3", OleDbType.VarChar).Value = TBTANGGAL.Text
                    .Parameters.Add("@4", OleDbType.VarChar).Value = CBJENISKELAMIN.Text
                    .Parameters.Add("@5", OleDbType.VarChar).Value = CBAGAMA.Text
                    .Parameters.Add("@6", OleDbType.VarChar).Value = TBNOHP.Text
                    .Parameters.Add("@7", OleDbType.VarChar).Value = TBALAMAT.Text

                    .ExecuteNonQuery()

                    .Parameters.Clear()
                End With
                MsgBox("Sukses Simpan Data..!!")
                tampil()
                bersih()
            Catch ex As Exception
                MsgBox(ex.ToString)
            End Try
        End If
    End Sub

    Private Sub BNEDIT_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BNEDIT.Click
        If TBNIS.Text = "" Or TBNAMA.Text = "" Or TBTEMPAT.Text = "" Or TBTANGGAL.Text = "" Or CBJENISKELAMIN.Text = Nothing Or CBAGAMA.Text = Nothing Or TBNOHP.Text = "" Or TBALAMAT.Text = "" Then
            MsgBox("Maaf Data Tidak Lengkap..!!!")
        Else
            Try
                With cmd
                    .Connection = con
                    .CommandText = "UPDATE SISWA SET NAMA=@1,TMP_LAHIR=@2,TGL_LAHIR=@3,JEN_KEL=@4,AGAMA=@5,NO_HP=@6,ALAMAT=@7 WHERE NIS='" & TBNIS.Text & "'"

                    .Parameters.Add("@1", OleDbType.VarChar).Value = TBNAMA.Text
                    .Parameters.Add("@2", OleDbType.VarChar).Value = TBTEMPAT.Text
                    .Parameters.Add("@3", OleDbType.VarChar).Value = TBTANGGAL.Text
                    .Parameters.Add("@4", OleDbType.VarChar).Value = CBJENISKELAMIN.Text
                    .Parameters.Add("@5", OleDbType.VarChar).Value = CBAGAMA.Text
                    .Parameters.Add("@6", OleDbType.VarChar).Value = TBNOHP.Text
                    .Parameters.Add("@7", OleDbType.VarChar).Value = TBALAMAT.Text

                    .ExecuteNonQuery()

                    .Parameters.Clear()
                End With

                MsgBox("Sukses Edit Data..!!")
                tampil()
                bersih()

            Catch ex As Exception
                MsgBox(ex.ToString)
            End Try
        End If
    End Sub

    Private Sub BNHAPUS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BNHAPUS.Click
        If TBNIS.Text = "" Then
            MsgBox("Mohon masukkan NIS untuk menghapus data..!", MsgBoxStyle.Exclamation, "Peringatan")

        Else
            Try
                cmd = New OleDbCommand("SELECT * FROM SISWA WHERE NIS='" & TBNIS.Text & "'", con)
                dr = cmd.ExecuteReader
                dr.Read()

                If dr.HasRows Then
                    Dim pesan As MsgBoxResult
                    pesan = MsgBox("Apakah Anda yakin ingin menghapus data ini..!!", MsgBoxStyle.OkCancel, "Pemberitahuan")

                    If pesan = MsgBoxResult.Ok Then
                        cmd = New OleDbCommand("DELETE FROM SISWA WHERE NIS='" & TBNIS.Text & "'", con)
                        cmd.ExecuteNonQuery()

                        MsgBox("Sukses Hapus Data..!!")
                        tampil()
                        bersih()
                    End If

                Else
                    MsgBox("Maaf NIS '" & TBNIS.Text & "' Tidak ditemukan..!!")
                    bersih()
                End If

            Catch EX As Exception
                MsgBox(EX.ToString)
            End Try
        End If
    End Sub


    Private Sub BNKELUAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BNKELUAR.Click
        Dim pesan As MsgBoxResult
        pesan = MsgBox("Apakah Anda Yakin Ingin Keluar Dari Program Ini..!!", MsgBoxStyle.YesNo, "Pemberitahuan")

        If pesan = MsgBoxResult.Yes Then
            Me.Close()
        End If
    End Sub
End Class