Berbagi Cerita, Catatan, Pengalaman ngoding dan Secangkir Teh Hangat.

Wednesday, December 28, 2016

CRUD:Menambahkan data dengan Perintah SQL Insert di VB.Net

Bagaimana Menambahkan data di database dengan Perintah SQL Insert di VB.Net.

Dalam pembuatan sebuah program seringkali kita berhubungan dengan database, diblog kali ini saya mau mencatat bagaimana caranya menambahkan data di database dengan perintah sql insert menggunakan database ms access 2007. biar yang udah kita pelajari engga lupa sebaiknya dibookmark dulu.


Table Desain.

diasumsikan memiliki table seperti ini, dan database diberi nama "database", untuk table nya diberi nama "karyawan"













dengan nik sebagai primary key.

Setelah itu kita membuat sebuah Form dengan format seperti dibawah.









2 buah textbox dengan nama tnik dan tnama
1 buah combobox dengan nama cmbJK
1 buat datetimepicker dengan nama dttgl_lahir
1 buah button dengan nama btn_simpan

Tambahkan name space System.Data.Oledb


Imports System.Data.OleDb



Connection String

Agar aplikasi yang kita bikin bisa ngobrol sama database dibutuhkan yang namanya connection string.
ada beberapa cara 

1. Deklarasikan variable connection_string.

Dim connection_string As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\database.accdb;Persist Security Info=False;"

di variable connection string ini menggunakan Application.StartupPath sehingga database path otomatis membaca di folder applikasi dijalankan, tentu saja saratnya database harus 1 folder dengan aplikasi.

2. Menggunakan Project Setting, Project -> Project Prepoertis -> Tab Setting
tutorial menyusul


Script SQL Insert

Buat method untuk melakukan penyimpanan, untuk post kali ini kita tidak menggunakan objek collection generik , langsung dari objek textbox, combo dan datetimepicker yang ada di form, disini kita akan menggunakan OleDbParameter Class supaya lebih enak dibaca, lebih aman dari SQL Injection.

 Private Sub simpan_data()
        'variable script_sql_insert menyimpan perintah insert @nik,@nama,@jk,@tgllahir adalah variable atau paramete
        Dim script_sql_insert = "insert into karyawan values(@nik,@nama,@jk,@tgllahir)"
        'usahakan gunakan using supaya objek yang kita buat akan otomatis tertutup kalo udah selesai.
        'ikon sebagai using statement koneksi ke database.
        Using iKon = New OleDbConnection(connection_string)
            'ini pengecekan aja siapa tau ada tuyul yang engga sengaja nyalain koneksi.
            If iKon.State = ConnectionState.Open Then iKon.Close()
            iKon.Open()
            'kasih jebakan petruk buat nangkep error
            Try
                'lagi, gunakan using
                'icmd sebagai statement untuk menjalankan perintah sql menggunakan koneksi ikon
                Using icmd = New OleDbCommand(script_sql_insert, iKon)
                    icmd.Parameters.Add(New OleDbParameter("@nik", tnik.Text))
                    'dengan menggunakan parameter tidak usah khawatir dengan nama yang menggandung ' (apostrop) karena otomatis dianggap sebagai string biasa
                    'dengan parameter kekhawatiran sql injection banyak berkurang.
                    icmd.Parameters.Add(New OleDbParameter("@nama", tnama.Text))
                    icmd.Parameters.Add(New OleDbParameter("@jk", cmbjk.Text))
                    icmd.Parameters.Add(New OleDbParameter("@tgllahir", dttgl_lahir.Value.Date))
                    'setelah parameter dibuat execute icmd
                    icmd.ExecuteNonQuery()
                End Using
                MsgBox("Data Berhasil disimpan")
            Catch ex As Exception
                'jika terjadi error ketika menjalankan icmd, akan ditanggkap disini dan dikasih pesan error
                'jika errornya ada di koneksi tidak akan ditangkap disini karena try ini ada didalam koneksi.
                MsgBox("error simpan data" & vbNewLine & ex.Message)
            End Try
        End Using
    End Sub

Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
        simpan_data()
End Sub


jika data berhasil disimpan akan seperti ini hasilnya













didatabasenya.













ingat untuk selalu menggunakan Statement Using dan Parameter untuk keamanan

Bahasa : VB.Net
IDE : Visual Studio 2010
.Net Framework : 3.5 .Net Framework
Database : Microsoft Access 2007
Pembahasan : CRUD, SQL, Insert, Statement Using, OLEDBConnection, OLEDBCommand, OLEDBParameter

sekian untuk posting kali ini, jangan lupa setelah membaca like, share dan sertakan link ini sebagai sumber kalo mau paste artikel ini di blog kalian.

Share:

0 comments:

Post a Comment

Powered by Blogger.

Ads 468x60px

Freelancer

Jaka Pradesa

Data Entry and Softwares

E: j.r.pradesa@gmail.com

Hire me on Freelancer.com

Social Icons