Salam sejahtera....
Selamat Sore...
Saya di sore hari ini menjelang maghrib saya ingin menulis lagi nih...
Judul saya panjang banget yah Xixixi...:) inilah program pertama saya saat saya berkenalan dengan yang namanya Database....
Jadi langsung saja yah kita buka VB 2008 nya lalu buat project baru dan design form nya seperti dibawah ini.... gak usah harus sama yah asal ada aja seperti form dibawah ini :)
Setelah itu tambahakan satu lagi contextmenustrip pada form ini.... seperti gambar dibawah ini...
Nah untuk penamaan masing-masing komponen sesuaikan saja yah pada script di bawah ini... :)
dan kopi paste saja script di bawah ini.... :)
Imports MySql.Data.MySqlClient
Dim db As New MySql.Data.MySqlClient.MySqlConnection
Dim sql As StringDim cmd As MySqlCommand
Dim rs As MySqlDataReader
Sub tampil_prodi()
prodi.Items.Clear()If jenjang.Text = "D1" Then
prodi.Items.Add("Teknisi Komputer")
prodi.Items.Add("Manajemen Informatika")
prodi.Items.Add("Desain Grafis")
ElseIf jenjang.Text = "D3" Then
prodi.Items.Add("Manajemen Informatika")
prodi.Items.Add("Komputer Akuntansi")
Else
prodi.Items.Add("Teknik Informatika")
prodi.Items.Add("Sistem Informasi")
End If
End Sub
sql = "server=localhost;uid =root; database = db_mahasiswa"
Try
db.ConnectionString = sql
db.Open()
MsgBox("Koneksi Database Sukses !!!", , "Informasi Konek")
Catch ex As Exception
MessageBox.Show(ex.Message)
End
End Try
End Sub
lv.Items.Clear()
sql = "select * from tbl_mahasiswa"
cmd = New MySqlCommand(sql, db)
rs = cmd.ExecuteReader
Try
Dim no As Integer = 0
While rs.Read
no += 1
Dim isi As New ListViewItem
isi.Text = no
isi.SubItems.Add(rs("npm"))
isi.SubItems.Add(rs("nama"))
isi.SubItems.Add(rs("alamat"))
isi.SubItems.Add(rs("tempat_lahir") & ", " & rs("tanggal_lhr"))
isi.SubItems.Add(rs("jenjang"))
isi.SubItems.Add(rs("prodi"))
isi.SubItems.Add(rs("telephone"))
lv.Items.Add(isi)
End While
Catch ex As Exception
MessageBox.Show(ex.Message)
End
End Try
rs.Close()
End Sub
lv.Columns.Add("No", 30, HorizontalAlignment.Center)
lv.Columns.Add("NPM", 80, HorizontalAlignment.Center)
lv.Columns.Add("Nama", 170, HorizontalAlignment.Left)
lv.Columns.Add("Alamat", 270, HorizontalAlignment.Left)
lv.Columns.Add("Tempat/Tanggal Lahir", 120, HorizontalAlignment.Center)
lv.Columns.Add("Jenjang", 70, HorizontalAlignment.Center)
lv.Columns.Add("Prodi", 130, HorizontalAlignment.Left)
lv.Columns.Add("Telephone", 100, HorizontalAlignment.Center)
lv.GridLines = True
lv.FullRowSelect = True
lv.View = View.Details
End Sub
Sub bersih()
npm.Text = ""nama.Text = ""
alamat.Text = ""
tempat.Text = ""
tanggal.Text = Now
jenjang.Text = ""
jenjang.Items.Clear()
prodi.Text = ""
prodi.Items.Clear()
telepon.Text = ""
npm.Enabled = True
btn_simpan.Text = "Simpan"
npm.Focus()
jenjang_tampil()
End Sub
Sub jenjang_tampil()
jenjang.Items.Add("D1")jenjang.Items.Add("D3")
jenjang.Items.Add("S1")
End Sub
Sub aktif(ByVal a As Boolean, ByVal b As Boolean)
npm.Enabled = anama.Enabled = b
alamat.Enabled = b
tempat.Enabled = b
tanggal.Enabled = b
jenjang.Enabled = b
prodi.Enabled = b
telepon.Enabled = b
End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
If MsgBox("Yakin Anda Ingin Keluar..", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "Informasi") = MsgBoxResult.No Thene.Cancel = True
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
koneksi_database()jenjang_tampil()
buat_table()
isitabel()
aktif(0, 0)
btn_batal.Enabled = False
btn_hapus.Enabled = False
btn_simpan.Enabled = False
End Sub
Private Sub btn_keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_keluar.Click
Me.Close()End Sub
Private Sub jenjang_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles jenjang.KeyDown
If e.KeyCode = Keys.Enter Then prodi.Focus()End Sub
Private Sub jenjang_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jenjang.SelectedIndexChanged
tampil_prodi()prodi.Focus()
End Sub
Private Sub npm_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles npm.KeyDown
If e.KeyCode = Keys.Enter ThenIf npm.Text = "" Then
MsgBox("NPM Tidak Boleh Kosong", , "Informasi Isi Control")
npm.SelectAll()
Else
sql = "select *from tbl_mahasiswa where npm='" & npm.Text & "'"
cmd = New MySqlCommand(sql, db)
rs = cmd.ExecuteReader
rs.Read()
If rs.HasRows Then
npm.Text = rs("npm")
nama.Text = rs("nama")
alamat.Text = rs("alamat")
tempat.Text = rs("tempat_lahir")
tanggal.Text = rs("tanggal_lhr")
jenjang.Text = rs("jenjang")
prodi.Text = rs("prodi")
telepon.Text = rs("telephone")
btn_simpan.Text = "Edit"
aktif(0, 1)
btn_simpan.Enabled = True
btn_hapus.Enabled = True
Else
aktif(0, 1)
btn_simpan.Text = "Simpan"
nama.Focus()
btn_simpan.Enabled = True
End If
rs.Close()
End If
End If
End Sub
Private Sub npm_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles npm.KeyPress
If InStr("0123456789", e.KeyChar) = 0 And e.KeyChar <> Chr(8) Then e.KeyChar = Chr(0)End Sub
Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
If btn_simpan.Text = "Simpan" Thensql = "insert into tbl_mahasiswa values('" & _
npm.Text & "','" & _
nama.Text & "','" & _
alamat.Text & "','" & _
tempat.Text & "','" & _
Format(tanggal.Value, "yyyy-MM-dd") & "','" & _
jenjang.Text & "','" & _
prodi.Text & "','" & _
telepon.Text & "')"
Try
cmd = New MySqlCommand(sql, db)
cmd.ExecuteNonQuery()
MsgBox("Data Telah Berhasil Disimpan", , "Informasi Simpan")
isitabel()
bersih()
btn_simpan.Enabled = False
btn_hapus.Enabled = False
aktif(0, 0)
si.Enabled = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Else
sql = "update tbl_mahasiswa set nama= '" & nama.Text & _
"', alamat = '" & alamat.Text & _
"', tempat_lahir = '" & tempat.Text & _
"', tanggal_lhr = '" & Format(tanggal.Value, "yyyy-MM-dd") & _
"', jenjang = '" & jenjang.Text & _
"', prodi = '" & prodi.Text & _
"', telephone = '" & telepon.Text & _
"' where npm='" & npm.Text & "'"
Try
cmd = New MySqlCommand(sql, db)
cmd.ExecuteNonQuery()
MsgBox("Data Telah Berhasil di Edit", , "Informasi Edit")
isitabel()
bersih()
btn_hapus.Enabled = False
btn_simpan.Enabled = False
aktif(0, 0)
si.Enabled = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End If
End Sub
Private Sub btn_baru_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles si.Click
aktif(1, 0)bersih()
npm.Focus()
si.Enabled = False
btn_simpan.Enabled = False
btn_hapus.Enabled = False
End Sub
Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
aktif(1, 0)bersih()
btn_simpan.Enabled = False
btn_hapus.Enabled = False
End Sub
Private Sub btn_hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_hapus.Click
sql = "delete from tbl_mahasiswa where npm='" & npm.Text & "'"Try
cmd = New MySqlCommand(sql, db)
If MsgBox("Yakin ingin di hapus", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "") = MsgBoxResult.Yes Then
cmd.ExecuteNonQuery()
MsgBox("Data Sudah Terhapus", , "Informasi Hapus")
isitabel()
bersih()
btn_simpan.Enabled = False
btn_hapus.Enabled = False
aktif(0, 0)
si.Enabled = True
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub npm_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles npm.TextChanged
If npm.Text = "" Thenbtn_batal.Enabled = False
Else
btn_batal.Enabled = True
End If
End Sub
Private Sub nama_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles nama.KeyDown
If e.KeyCode = Keys.Enter Then alamat.Focus()End Sub
Private Sub tempat_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tempat.KeyDown
If e.KeyCode = Keys.Enter Then tanggal.Focus()End Sub
Private Sub prodi_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles prodi.KeyDown
If e.KeyCode = Keys.Enter Then telepon.Focus()End Sub
Private Sub prodi_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles prodi.SelectedIndexChanged
telepon.Focus()End Sub
Private Sub telepon_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles telepon.KeyDown
If e.KeyCode = Keys.Enter Then btn_simpan_Click(sender, e)End Sub
Private Sub lv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lv.MouseUp
If lv.SelectedItems.Count <> 0 ThenIf e.Button = Windows.Forms.MouseButtons.Right Then
lv.ContextMenuStrip = ContextMenuStrip1
End If
End If
End Sub
Private Sub HapusToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HapusToolStripMenuItem.Click
sql = "delete from tbl_mahasiswa where npm='" & lv.SelectedItems(0).SubItems(1).Text & "'"Try
cmd = New MySqlCommand(sql, db)
If MsgBox("Yakin ingin di hapus", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "") = MsgBoxResult.Yes Then
cmd.ExecuteNonQuery()
MsgBox("Data Sudah Terhapus", , "Informasi Hapus")
isitabel()
bersih()
btn_simpan.Enabled = False
btn_hapus.Enabled = False
aktif(0, 0)
si.Enabled = True
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub EditToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EditToolStripMenuItem.Click
sql = "select *from tbl_mahasiswa where npm='" & lv.SelectedItems(0).SubItems(1).Text & "'"cmd = New MySqlCommand(sql, db)
rs = cmd.ExecuteReader
rs.Read()
Try
npm.Text = rs("npm")
nama.Text = rs("nama")
alamat.Text = rs("alamat")
tempat.Text = rs("tempat_lahir")
tanggal.Text = rs("tanggal_lhr")
jenjang.Text = rs("jenjang")
prodi.Text = rs("prodi")
telepon.Text = rs("telephone")
btn_simpan.Text = "Edit"
aktif(0, 1)
nama.Focus()
btn_simpan.Enabled = True
btn_hapus.Enabled = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
rs.Close()
End Sub
End Class
Lumayan panjang yah... scriptnya... :)
kalau mau download program jadinya klik disini :)
Ok Selamat Sore... :)
dan Selamat Mencoba :)
Salam hangat selalu... :*
0 komentar:
Post a Comment