vibi net 2008 dengan sql server 2005 dan mysql
TRANSCRIPT
MEMBUAT PROGRAM DENGAN VIBI NET 2008 DAN DATABASE SQL SERVER 2005
Buka program SQL Management Studio Express
Klik kanan pada database pilih new database, berinama database sesuai yang Anda inginkan.
Pada database yang telah berhasil dibuat, klik tanda (+), kemudian klik kanan pada Tables New Table..
Buat field-fieldnya seperti pada gambar ..
Simpan tabel yang telah Anda buat dengan nama tblMhs
MEMBUAT FORM DATA MAHASISWA
Buat project baru, simpan dengan nama DataMahasiswa.
Buat Form seperti tampilan berikut dengan objek kontrol sbb:
Nama Control Properties Nilai
Form Name
Start Posistion
Text
FrmMahasiswa
CenterScreen
Form Data Mahasiswa
Label 1 Text Nim
Label 2 Text Nama
Label3 Text Jenis Kelamin
Label4 Text Jurusan
TextBox1 Name txtNim
TextBox2 Name txtNama
ComboBox1 Name cbJkl
ComboBox2 Name cbJurusan
DataGridView1 Name DgMhs
Button1 Name
Text
cmdTambah
Tambah
Button2 Name
Text
cmdSimpan
Simpan
Button3 Name
Text
CmdUbah
Ubah
Button4 Name
Text
CmdHapus
Hapus
Klik kanan pada project DataMahasiswa Add New Item Class
Beri nama class dengang ClassKoneksi
Script ClassKoneksi:
Printah di atas untuk mengakses perintah SQL dari pustaka net System.Data.Sql
‘====================================Imports Microsoft.VisualBasicImports System.Data.Sql‘====================================
Membuat deklarasi turunan class yang akan digunakan untuk berkomunikasi dengan database SQL. ‘================================================================= Public Class ClassKoneksi Protected tblPengguna = New DataTable Protected SQL As String Protected Cn As OleDb.OleDbConnection Protected Cmd As OleDb.OleDbCommand Protected Da As OleDb.OleDbDataAdapter Protected Ds As DataSet Protected Dt As DataTable‘=====================================================================
Membuat prosedur global dengan nama OpenConn , yang akan digunakan untuk melakukan koneksi ke Database SQL Server 2005
‘===================================================================== Public Function OpenConn() As Boolean
Cn = New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False; User ID=sa;Password=;Initial Catalog=uniska; Data Source =ARAFAT-PC\SQLEXPRESS")
Cn.Open() If Cn.State <> ConnectionState.Open Then Return False Else Return True End If End Function,===========================================================================
Membuat prosedur Global dengan nama CloseConn, yang akan digunakan untuk memutuskan koneksi ke database
‘==========================================================================
Public Sub CloseConn() If Not IsNothing(Cn) Then Cn.Close() Cn = Nothing End If End Sub
‘====================================================================
Membuat Prosedur Global dengan nama ExecuteQuery, dengan parameter bernama Query bertipe data String, yang dugunakan untuk mejalankan atau mengeksekusi fungsi DML yang di terima
‘====================================================================
Public Function ExecuteQuery(ByVal Query As String) As DataTable If Not OpenConn() Then MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access Failed") Return Nothing Exit Function End If
Cmd = New OleDb.OleDbCommand(Query, Cn) Da = New OleDb.OleDbDataAdapter Da.SelectCommand = Cmd
Ds = New Data.DataSet Da.Fill(Ds)
Dt = Ds.Tables(0)
Return Dt
Dt = Nothing Ds = Nothing Da = Nothing Cmd = Nothing
CloseConn()
End Function
Membuat Prosedur Global dengan nama ExecuteNonQuery, dengan parameter bernama Query bertipe data String, yang dugunakan untuk mejalankan atau mengeksekusi fungsi DML yang di terima
‘====================================================================
Public Sub ExecuteNonQuery(ByVal Query As String) If Not OpenConn() Then MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access Failed..!!") Exit Sub End If
Cmd = New OleDb.OleDbCommand
Cmd.Connection = Cn Cmd.CommandType = CommandType.Text Cmd.CommandText = Query Cmd.ExecuteNonQuery() Cmd = Nothing CloseConn() End SubEnd Class
‘====================================================================
Script FrmMahasiswa
Public Class frmMhs Dim SQL As String Dim Proses As New ClassKoneksi Dim tabelMhs As DataTable
Sub Data_Record() tabelMhs = Proses.ExecuteQuery("Select * From TblMhs") DgMhs.DataSource = tabelMhs End Sub
Sub bersih() Call Data_Record() txtNim.Text = "" txtNama.Text = "" CbJkl.Text = "" CbJurusan.Text = "" cmdHapus.Enabled = False cmdUbah.Enabled = False txtNim.Focus() End Sub
Sub header() DgMhs.Columns(0).HeaderText = "NIM" DgMhs.Columns(0).Width = 60 DgMhs.Columns(1).HeaderText = "Nama" DgMhs.Columns(2).HeaderText = "Jenis Kelamin" DgMhs.Columns(2).Width = 100 DgMhs.Columns(3).HeaderText = "Jurusan" End Sub
Private Sub frmMhs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call bersih() Call header()
End Sub
Private Sub cmdSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSimpan.Click If txtNim.Text = "" Then txtNim.Focus() : Exit Sub If txtNama.Text = "" Then Exit Sub If CbJkl.Text = "" Then Exit Sub If CbJurusan.Text = "" Then Exit Sub
SQL = "Insert Into TblMhs Values ('" & txtNim.Text & "','" & txtNama.Text & "', '" & CbJkl.Text & "','" & CbJurusan.Text & "')" Proses.ExecuteNonQuery(SQL) Call bersih() End Sub
Private Sub cmdTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdTambah.Click Call bersih() txtNim.Focus()
End Sub
Private Sub DgMhs_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DgMhs.DoubleClick Try txtNama.Text = DgMhs.SelectedCells(1).Value txtNim.Text = DgMhs.SelectedCells(0).Value CbJkl.Text = DgMhs.SelectedCells(2).Value CbJurusan.Text = DgMhs.SelectedCells(3).Value Catch ex As Exception MsgBox(ex.ToString()) End Try cmdSimpan.Enabled = False cmdUbah.Enabled = True cmdHapus.Enabled = True txtNim.Enabled = False
End Sub
Private Sub cmdHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdHapus.Click SQL = "delete from tblMhs where nim ='" & txtNim.Text & "'" Proses.ExecuteNonQuery(SQL) Call bersih() End Sub
Private Sub cmdUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdUbah.Click SQL = "update tblMhs set nama= '" & txtNama.Text & "', jkl = '" & CbJkl.Text & "', jurusan = '" & CbJurusan.Text & "' where nim = '" & txtNim.Text & "'" Proses.ExecuteNonQuery(SQL) Call bersih()
End Sub
MEMBUAT PROGRAM DENGAN VIBI NET 2008 DAN DATABASE SQL SERVER 2005
.NET Data Provider
.NET Data Provider adalah sekumpilan class-class yang digunakan untukmelakukan koneksi ke database, serta untuk mengambil, meng-update, danmen-delete data.
Visual Basic .NET mengklasifikasikan beberapa tipe .NET Data Provider berdasarkan jenis database yang digunakan, yaitu :
SQL Server .NET Data ProviderProvider ini dipakai untuk database SQL Server 7.0 dan versi diatasnya.C o n t o h : Imports System.Data.SqlClient
LE DB .NET Data ProviderProvider ini dipakai untuk database SQL Server 6.5, Microsoft Accsess, serta database lain yang mempunyai provider OLE DB.C o n t o h : Imports System.Data.OleDb
ODBC .NET Data ProviderProvider ini dipakai untuk database yang hanya mempunyai driver ODBCC o n t oh : Imports System.Data.Odbc
Class-class yang terdapat didalam .NET Data Provider, meliputi :
ConnectionClass Connection digunakan untuk melakukan koneksi ke dalam database
CommandClass Command digunakan untuk menjalankan perintah SQL pada database
DataReaderClass DataReader digunakan untuk melakukan pembacaan data pada database
DataAdapterClass DataAdapter digunakan untuk menghubungkan antara database dengan dataset.
Object Connection
1.1 Property Connectionstring
Sebuah connectionstring mendefinisikan parameter-parameter yang dibutuhkan dalam membuat suatu koneksi pada database.
Contoh Connectionstring
Microsoft AccsessPublic strConn As String = _ "Provider=Microsoft.jet.OLEDB.4.0;Data" _& " Source=" & Application.StartupPath & "\penjualan.mdb; "
MySqlPublic Conn As String = "Server=localhost;User" & _ "ID=root;password=;database=sc"
Setelah membuat Connectionstring anda tinggal membuat Object dari class Connection. Untuk database MySql pembuatan object connection seperti berikut ini :
Dim con As MySqlConnection()con =New MySqlConnection(Conn)con.Open()
2) Object Command
Perintah SQL yang akan anda jalankan misalnya INSERT, UPDATE, DELETE harus menggunakan object command. Berikut contoh membuat object command :
Dim cmd As MySqlCommandcmd = New MySqlCommand("isi denan perintah SQL", con)
Selanjutnya anda harus melakukan eksekusi terhadap object command tersebut agar perintah SQL yang dibawa oleh object command itu dapat dijalankan pada database. Berikut ini beberapa metode yang dapat digunakan untuk menjalankan object command :
ExecuteReaderDigunakan saat kita ingin membaca/mencari data yang ada di database
ExecuteNonQueryDigunakan saat kita ingin menyimpan, mengubah, menghapus data yang ada di database.Contoh:
Dim cmd As MySqlCommandcmd = New MySqlCommand("isi denan perintah SQL", con cmd.ExecuteNonQuery
3) Object DataReaderDataReader merupakan object yang digunakan untuk membaca data dari database. Didalam
membuat object DataReader anda harus memanggil metode ExecuteReader dari object .Net yang lain yaitu object Command.
Buat tblmhs
Field Field File Size
nim Varchar 20nama Varchar 35
jkl Varchar 10jurusan Varchar 25
Imports MySql.Data.MySqlClientImports Microsoft.VisualBasic
Public Class frmMhsMysql Inherits System.Windows.Forms.Form Private conn As MySqlConnection Dim insertquery As String Dim Hasil As Integer Dim cmd As MySqlCommand
Dim konek = ";server =localhost" & ";user=root" & ";password=''" & ";database=uniska"
Sub koneksi() Try conn = New MySqlConnection(konek) conn.Open() Me.Text = "Database Terkoneksi" conn.Close() Catch ex As Exception MessageBox.Show("Koneksi error : " + ex.Message) End Try End Sub
Private Sub frmMhsMysql_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call koneksi() Call tampil() End Sub
Private Sub cmdSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSimpan.Click
insertquery = ("insert into tblmhs (nim,nama,jkl,jurusan) values ('" & txtNim.Text & "' ,'" & txtNama.Text & "', '" & CbJkl.Text & "', '" & CbJurusan.Text & "')")
Try cmd = New MySqlCommand(insertquery, conn) cmd.Connection.Open() Hasil = cmd.ExecuteNonQuery If Hasil > 0 Then MessageBox.Show("Record Berhasil Dimasukan", "sukses", MessageBoxButtons.OK, MessageBoxIcon.Information) txtNama.Text = "" txtNim.Text = "" CbJkl.Text = "" CbJurusan.Text = "" End If cmd.Connection.Close()
Catch ex As ExceptionMessageBox.Show("failed :" & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try cmd.Dispose() 'GridMhs.Refresh() tampil() End Sub
Private Sub CbJurusan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CbJurusan.SelectedIndexChanged cmdSimpan.Enabled = True End Sub
Sub tampil()
Call koneksi()
Dim tampilData As String = "SELECT * FROM tblmhs" Dim da As New MySqlDataAdapter(tampilData, conn) Dim ds As New DataSet() da.Fill(ds) GridMhs.DataSource = ds.Tables(0)
End Sub
Private Sub GridMhs_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridMhs.DoubleClick Try txtNama.Text = GridMhs.SelectedCells(1).Value txtNim.Text = GridMhs.SelectedCells(0).Value CbJkl.Text = GridMhs.SelectedCells(2).Value CbJurusan.Text = GridMhs.SelectedCells(3).Value Catch ex As Exception MsgBox(ex.ToString()) End Try cmdSimpan.Enabled = False cmdUbah.Enabled = True cmdHapus.Enabled = True txtNim.Enabled = False End Sub Sub bersih() txtNama.Text = "" txtNim.Text = "" CbJkl.Text = "" CbJurusan.Text = "" txtNim.Focus() End Sub
Private Sub cmdHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdHapus.Click Dim sql As String = "delete from tblmhs where nim= '" & txtNim.Text & "'" Try cmd = New MySqlCommand(sql, conn) cmd.Connection.Open() Hasil = cmd.ExecuteNonQuery If Hasil > 0 Then
MessageBox.Show("Record Berhasil DiHapus", "sukses", MessageBoxButtons.OK, MessageBoxIcon.Information) txtNama.Text = "" txtNim.Text = "" CbJkl.Text = "" CbJurusan.Text = "" End If cmd.Connection.Close()
Catch ex As ExceptionMessageBox.Show("failed :" & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try cmd.Dispose() 'GridMhs.Refresh() tampil() End Sub
Private Sub cmdUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdUbah.Click
Dim ubahData As String = "Update tblmhs set nama='" & txtNama.Text & "',jkl='" & CbJkl.Text & "', jurusan='" & CbJurusan.Text & "' where nim ='" & txtNim.Text & "'" cmd = New MySqlCommand(ubahData, conn) cmd.Connection.Open() Try Hasil = cmd.ExecuteNonQuery If (Hasil > 0) Then MessageBox.Show("Record Berhasil diubah", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information) End If Catch ex As MySqlException MessageBox.Show("Failed : " & ex.Message) End Try cmd.Dispose() Call tampil()
End Sub
Private Sub cmdTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdTambah.Click Call bersih() End SubEnd Class