vibi net 2008 dengan sql server 2005 dan mysql

16
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..

Upload: arafat

Post on 05-Jul-2015

440 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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..

Page 2: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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.

Page 3: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 4: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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:

Page 5: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 6: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

‘====================================================================

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

Page 7: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 8: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 9: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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.

Page 10: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 11: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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()

Page 12: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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

Page 13: Vibi Net 2008 dengan SQL Server 2005 dan MySQL

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