vibi net sql server 2005 dan my sql

14
Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom 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: uniska-smk-telkom-banjarbaru

Post on 24-May-2015

2.690 views

Category:

Technology


7 download

TRANSCRIPT

Page 1: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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 sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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 sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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

Page 4: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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

Page 5: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

Script ClassKoneksi:

Printah di atas untuk mengakses perintah SQL dari pustaka net System.Data.Sql

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

Imports Microsoft.VisualBasic

Imports 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

Page 6: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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

Page 7: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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 Sub

End 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 = ""

Page 8: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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

Page 9: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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 MySQL

.NET Data Provider

.NET Data Provider adalah sekumpilan class-class yang digunakan untuk melakukan koneksi ke database, serta untuk mengambil, meng-update, dan

men-delete data.

Visual Basic .NET mengklasifikasikan beberapa tipe .NET Data Provider berdasarkan jenis database yang digunakan, yaitu :

SQL Server .NET Data Provider

Provider ini dipakai untuk database SQL Server 7.0 dan versi diatasnya.

Contoh :Imports System.Data.SqlClient

LE DB .NET Data Provider Provider ini dipakai untuk database SQL Server 6.5, Microsoft Accsess, serta database lain yang mempunyai provider OLE DB. Contoh : Imports System.Data.OleDb

ODBC .NET Data Provider Provider ini dipakai untuk database yang hanya mempunyai driver ODBC Contoh: Imports System.Data.Odbc

Page 10: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

Class-class yang terdapat didalam .NET Data Provider, meliputi :

Connection Class Connection digunakan untuk melakukan koneksi ke

dalam database

Command

Class Command digunakan untuk menjalankan perintah SQL

pada database

DataReader Class DataReader digunakan untuk melakukan pembacaan data pada database

DataAdapter

Class 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 11: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

Contoh Connectionstring

Microsoft Accsess

Public strConn As String = _

"Provider=Microsoft.jet.OLEDB.4.0;Data" _

& " Source=" & Application.StartupPath & "\penjualan.mdb; "

MySql Public 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 MySqlCommand

cmd = 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 :

ExecuteReader

Digunakan saat kita ingin membaca/mencari data yang ada di database

ExecuteNonQuery Digunakan saat kita ingin menyimpan, mengubah, menghapus data yang ada di database. Contoh:

Dim cmd As MySqlCommand cmd = New MySqlCommand("isi denan perintah SQL", con cmd.ExecuteNonQuery

3) Object DataReader

DataReader 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

Page 12: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

Field Field File Size

nim Varchar 20

nama Varchar 35

jkl Varchar 10

jurusan Varchar 25

Imports MySql.Data.MySqlClient

Imports 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 = ""

Page 13: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

End If

cmd.Connection.Close()

Catch ex As Exception

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

Page 14: Vibi net sql server 2005 dan my sql

Vibi Net dengan SQL Server 2005 dan MySQL by Arafat, S.Kom

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 Exception

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

End Class