Ketika sebuah program yang dibuat pada Visual Studio 2010 sudah di compile, dan suatu saat terjadi perubahan pada server database yang digunakan, maka kita harus merubah string koneksi yang terdapat pada module. Harus buka kodingannya lagi, ubah koneksi, lalu compile ulang. Agar praktis dan nggak harus buka module lagi, kita dapat membuat sebuah form untuk setting server database. Sehingga aplikasi yang kita gunakan lebih dinamis akan perubahan pada server database.
Contoh yang gue buat disini menggunakan database MySql (WAMP), kenapa? ya nggak kenapa-kenapa, pengen aja :D. Ini bisa dikembangkan menggunakan database SQL Server 2005, tapi kita harus buat user baru pada SQL Server 2005 untuk menggunakannya, caranya disini. Gue saranin diketik ya source codenya, jangan copy paste doang. Percayalah, dengan ngetik kita lebih banyak belajar dan ingat sama kodingannya :p.
- Demo Aplikasi (ID=KD01 Pass=Test)
- Database
Pastiin WAMP/XAMP udah diinstall dan dirun ya, terus import database yang udah didownload. Cara import database ada disini.
Cara bikinnya, buat project dulu di Visual Studio 2010, buat beberapa form (Setting, Menu, Login) tambahkan satu module.
Menu Form (Menu_) |
Source Code pada Module
Imports MySql.Data.MySqlClient Module Module1 Public conn As MySqlConnection Public server As String Public conn_server As String Public conn_user As String Public conn_pass As String Public conn_database As String Public Sub conn_get() conn_server = GetSetting("Buku", "Pengaturan", "server", "") conn_user = GetSetting("Buku", "Pengaturan", "user", "") conn_pass = GetSetting("Buku", "Pengaturan", "pass", "") conn_database = GetSetting("Buku", "Pengaturan", "database", "") End Sub Public Sub conn_save(ByVal server As String, ByVal user As String, ByVal pass As String, ByVal data As String) Call SaveSetting("Buku", "Pengaturan", "server", server) Call SaveSetting("Buku", "Pengaturan", "user", user) Call SaveSetting("Buku", "Pengaturan", "pass", pass) Call SaveSetting("Buku", "Pengaturan", "database", data) Call conn_get() End Sub Public Function koneksi() As Boolean Try server = "data source={0};user id={1};password={2};initial catalog={3}" server = String.Format(server, conn_server, conn_user, conn_pass, conn_database) conn = New MySqlConnection(server) conn.Open() Return True Catch ex As Exception MsgBox("Connection Error" + vbNewLine + "Please Check Setting Info!", MsgBoxStyle.Critical, "ERROR") Return False End Try End Function End Module
Source Code pada Form Login
Imports MySql.Data.MySqlClient Public Class Form1 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Me.Close() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Setting_.Show() Me.Hide() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Call conn_get() If koneksi() = True Then Dim sql As String = "SELECT * FROM User WHERE Kode='" & Me.TextBox1.Text & "' AND Password='" & TextBox2.Text & "' " Dim cmd As New MySqlCommand(sql, conn) Dim rs As MySqlDataReader rs = cmd.ExecuteReader If rs.Read Then rs.Close() cmd.Dispose() Me.Hide() Menu_.Show() Else MsgBox("Wrong ID/Password!", MsgBoxStyle.Critical, "ERROR") rs.Close() cmd.Dispose() Exit Sub End If End If Catch ex As Exception MsgBox(ex.Message) End Try End Sub End Class
Source Code pada Form Setting
Public Class Setting_ Sub sett() Call conn_get() txtserver.Text = conn_server txtuser.Text = conn_user txtpass.Text = conn_pass txtdatabase.Text = conn_database End Sub Private Sub Setting__Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call sett() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Call sett() Me.Close() Form1.Show() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Call conn_save(txtserver.Text, txtuser.Text, txtpass.Text, txtdatabase.Text) MsgBox("Saved!") Me.Close() Form1.Show() End Sub End Class
Sekarang tinggal di run projectnya, dengan awalan form login.
Sumber Refrensi = http://djiesoft.blogspot.com
Cara buat koneksi dinamis, Cara buat koneksi VB.NET MySql, Buat Koneksi Setting, Cara Membuat Aplikasi VB.NET, Buat Koneksi Tanpa Buka Codingan, Cara Buat Form Setting Koneksi
1 comments
gan, masih aktif gk ne web admin?
tolong dong untuk databasenya di post pembuatannya serta beberapa link disini gk muncul!
EmoticonEmoticon