Membuat Form Entri Database dengan Visual Basic .Net 2008
Ini merupakan contoh membuat sebuah program entri sederhana dengan menggunakan Visual Basic .Net 2008. Adapun kasus yang diterapkan adalah Entri Data Dosen, dengan menggunakan sebuah form yang diberi Nama frmDosen. Pertama-tama siapkan database di SQL Server (saya menggunakan SQL Server 2000) dengan tabel bernama tbDosen dengan field-field seperti dibawah ini:
Langkah berikut adalah mempersiapkan form frmDosen dengan tampilan seperti dibawah ini:
adapun kontrol-kontrol yang dibutuhkan adalah:
name kontrol
txtbidangkeahlian textbox
txtJabatanFungsional textbox
txtIdentitas textbox
txtNamaDosen textbox
txts1 textbox
txts2 textbox
txts3 textbox
txttempatlahir textbox
rdtetap radio button
rdlb radio button
dttgllahir dtpicker
cmdsimpan command button
cmdbersih command button
cmdhapus command button
cmdtutup command button
Setelah keduanya disiapkan, saatnya untuk melanjutkan dengan coding program. pertama-tema kita harus mempersiapkan koneksi ke database dengan menggunakan perintah Import pada level form yakni:
Imports System
Imports System.Data
Imports System.Data.SqlClient
letakkan perintah ini diatas public class frmDosen (yang muncul jika kita mendouble click salah satu dari control dari form).
Public Class frmDosen
Private Sub cmdTutup_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdTutup.Click
Me .Close()
End Sub
Private Sub cmdBersih_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBersih.Click
txtKodeDosen.Text = ""
txtKodeDosen.Focus()
End Sub
Private Sub bersihForm()
txtBidangKeahlian.Text = ""
txtIdentitas.Text = ""
txtJabatanFungsional.Text = ""
txtNamaDosen.Text = ""
txtS1.Text = ""
txtS2.Text = ""
txtS3.Text = ""
txtTempatLahir.Text = ""
rdTetap.Checked = True
rdLB.Checked = Not rdTetap.Checked
dtTglLahir.Value = Date .Today
End Sub
Private Sub cmdHapus_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdHapus.Click
Dim con As SqlConnection
Dim cmdDosen As SqlCommand
Dim strSQL As String
If MsgBox( "Apakah anda yakin akan menghapus data ini?" , MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi hapus data " & Me .Text) = MsgBoxResult.Yes Then
Try
con = New SqlConnection(mdlUtama.cnString)
con.Open()
strSQL = "delete FROM tbdosen WHERE kodedosen='" & txtKodeDosen.Text & "'"
cmdDosen = New SqlCommand(strSQL, con)
cmdDosen.ExecuteScalar()
Catch x As Exception
MsgBox( "Terjadi kesalahan pada hapus di " & Me .Text & " dengan pesan:" & Chr(13) & x.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End If
End Sub
Private Sub frmDosen_KeyPress( ByVal sender As Object , ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me .KeyPress
If Asc(e.KeyChar) = 13 Then
SendKeys.Send( "{tab}" )
End If
End Sub
Private Sub frmDosen_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Load
End Sub
Private Sub txtKodeDosen_KeyPress( ByVal sender As Object , ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtKodeDosen.KeyPress
e.KeyChar = Chr(Asc(UCase(e.KeyChar)))
End Sub
Private Sub txtKodeDosen_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKodeDosen.TextChanged
Dim conDosen As SqlConnection
Dim comDosen As SqlCommand
Dim rsDosen As SqlDataReader
Dim strSQL As String
If txtKodeDosen.Text = "" Then
bersihForm()
Else
Try
conDosen = New SqlConnection(mdlUtama.cnString)
conDosen.Open()
strSQL = "SELECT * FROM tbdosen WHERE kodedosen='" & txtKodeDosen.Text & "'"
comDosen = New SqlCommand(strSQL, conDosen)
rsDosen = comDosen.ExecuteReader
If rsDosen.Read Then
txtNamaDosen.Text = rsDosen( "nama" ).ToString
txtTempatLahir.Text = rsDosen( "tempatlahir" ).ToString
dtTglLahir.Value = Format(rsDosen( "tgllahir" ), "yyyy-MM-dd" )
txtIdentitas.Text = rsDosen( "identitas" ).ToString
txtS1.Text = rsDosen( "pendidikans1" ).ToString
txtS2.Text = rsDosen( "pendidikans2" ).ToString
txtS3.Text = rsDosen( "pendidikans3" ).ToString
txtJabatanFungsional.Text = rsDosen( "jabfungsional" ).ToString
txtBidangKeahlian.Text = rsDosen( "bidangkeahlian" ).ToString
rdTetap.Checked = IIf(rsDosen( "dosentetap" ).ToString = 0, True , False )
rdLB.Checked = Not rdTetap.Checked
Else
bersihForm()
End If
Catch ex As Exception
MsgBox( "Terjadi kesalahan pada pembacaan di " & Me .Text & " dengan pesan:" & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End If
End Sub
Private Sub cmdSimpan_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSimpan.Click
Dim con As SqlConnection
Dim comDosen As SqlCommand
Dim rsDosen As SqlDataReader
Dim strSQL As String
Try
con = New SqlConnection(mdlUtama.cnString)
strSQL = "SELECT * FROM tbdosen WHERE kodeDosen='" & txtKodeDosen.Text & "'"
con.Open()
comDosen = New SqlCommand(strSQL, con)
rsDosen = comDosen.ExecuteReader
If rsDosen.Read Then
If MsgBox( "Data ini sudah ada, mau diperbaiki?" , MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi edit data" ) = MsgBoxResult.Yes Then
strSQL = "UPDATE tbdosen set nama='" & txtNamaDosen.Text & "',tempatlahir='" & txtTempatLahir.Text & "',tgllahir='" & Format(dtTglLahir.Value, "yyyy-MM-dd" ) & "',identitas='" & txtIdentitas.Text & "',pendidikans1='" & txtS1.Text & "',pendidikans2='" & txtS2.Text & "',pendidikans3='" & txtS3.Text & "',jabfungsional='" & txtJabatanFungsional.Text & "',bidangkeahlian='" & txtBidangKeahlian.Text & "',dosentetap=" & IIf(rdTetap.Checked = True , 0, 1) & " WHERE kodedosen='" & txtKodeDosen.Text & "'"
Else
strSQL = ""
End If
Else
strSQL = "INSERT INTO tbdosen(kodedosen,nama,tempatlahir,tgllahir,identitas,pendidikans1,pendidikans2,pendidikans3,jabfungsional,bidangkeahlian,dosentetap) VALUES('" & txtKodeDosen.Text & "','" & txtNamaDosen.Text & "','" & txtTempatLahir.Text & "','" & Format(dtTglLahir.Value, "yyyy-MM-dd" ) & "','" & txtIdentitas.Text & "','" & txtS1.Text & "','" & txtS2.Text & "','" & txtS3.Text & "','" & txtJabatanFungsional.Text & "','" & txtBidangKeahlian.Text & "'," & IIf(rdTetap.Checked = True , 0, 1) & ")"
End If
rsDosen.Close()
If strSQL <> "" Then
comDosen = New SqlCommand(strSQL, con)
comDosen.ExecuteScalar()
End If
con.Close()
comDosen = Nothing
con = Nothing
txtKodeDosen.Text = ""
Catch x As Exception
MsgBox( "Terjadi kesalahan pada hapus di " & Me .Text & " dengan pesan:" & Chr(13) & x.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End Sub
End Class
seharusnya habis ada kodingan trus di print screen hasilnya
BalasHapusmo nanya dunkz untuk script dibwah ini :
BalasHapusDim con As MySqlConnection = New MySqlConnection("server=localhost;user id=root;password=chandra;database=scp; pooling=false;Connection Timeout=5")
con.Open()
Dim StrSQL As String = "SELECT akses FROM user WHERE nama='" & txtUsername.Text & "'"
Dim excu As MySqlCommand = New MySqlCommand(StrSQL, con)
Dim joe As MySqlDataReader = excu.ExecuteReader
joe.Read()
If StrSQL = "admin" Then
FormAdmin.Show()
txtUsername.Clear()
txtPassword.Clear()
ElseIf StrSQL = "pegawai" Then
FormPeg.Show()
txtUsername.Clear()
txtPassword.Clear()
End If
joe.Close()
mo nanya dunkzz,,itu hasil dari sql command nya bisa ga di masukin ke string trus baru digunakan untuk kondisi if,,seperti yang terlihat diatas...
@anonim1: source code lengkapnya sudah saya posting mas
BalasHapus@anonim2:
mungkin seperti ini:
if joe( "tingkat" ).ToString="admin" then
saya asumsikan nama fieldnya tingkat untuk "pegawai" atau "adminnya",
thansk bantuannya,,,
BalasHapusit's work...fiuh...