Berikut contoh senderhana membuat form untuk menyimpan connection string yang digunakan untuk melakukan koneksi ke SQL Server, silahkan melakukan pengembangan jika diperlu.
Jika koneksi ke SQL Server berhasil maka akan muncul pesan sebagai berikut:
Cara kerja:
· Jika user meng-klik tombol Test Connection, maka program akan melakukan pengujian koneksi ke SQL Server
· Jika user meng-klik tombol Save, dan jika pengaturan koneksi sudah benar dan koneksi berjalan normal maka connection string akan disimpan.
Code :
'untuk STREAM WRITER
Imports System.IO
'untuk SQL CONNECTION
Imports System.Data
Imports System.Data.SqlClient
Public Class frmDatabaseConnect
'deklarasi variabel
Private SW As StreamWriter
Private sqlConn As SqlConnection
Private m_ConnString As String
'menentukan path dari file EXE, untuk meletakan file Connection String
Private myPath As String = AppDomain.CurrentDomain.BaseDirectory
#Region "Message Box"
Private Sub ValidationMessage(ByVal strMessage As String)
MessageBox.Show(strMessage, _
"Database Connect - Validation", _
MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Sub
#End Region
Private Sub prepare4start()
txtServer.Text = ""
cbxUseWA.Checked = False
txtUserID.Text = ""
txtPassword.Text = ""
txtDatabase.Text = ""
txtServer.Focus()
End Sub
Private Sub initWindowsAuthentication()
txtUserID.Text = ""
txtPassword.Text = ""
If cbxUseWA.Checked = True Then
txtUserID.ReadOnly = True
txtPassword.ReadOnly = True
txtDatabase.Focus()
Else
txtUserID.ReadOnly = False
txtPassword.ReadOnly = False
End If
End Sub
Private Function validateInput() As Boolean
If txtServer.Text.Trim = "" Then
ValidationMessage("Please input SERVER NAME")
txtServer.Text = ""
txtServer.Focus()
Return False
ElseIf cbxUseWA.Checked = False Then
If txtUserID.Text.Trim = "" Then
ValidationMessage("Please input USER ID")
txtUserID.Text = ""
txtUserID.Focus()
Return False
ElseIf txtPassword.Text.Trim = "" Then
ValidationMessage("Please input PASSWORD")
txtPassword.Text = ""
txtPassword.Focus()
Return False
Else
Return True
End If
ElseIf txtDatabase.Text.Trim = "" Then
ValidationMessage("Please input DATABASE NAME")
txtDatabase.Text = ""
txtDatabase.Focus()
Return False
Else
Return True
End If
End Function
Private Function tryConnection() As Boolean
'cek validasi input dari user
If validateInput() = False Then Exit Function
m_ConnString = ""
If cbxUseWA.Checked = True Then
m_ConnString = "Integrated Security=SSPI" & _
";Persist Security Info=False" & _
";Initial Catalog=" & txtDatabase.Text.Trim & _
";Data Source=" & txtServer.Text.Trim
ElseIf cbxUseWA.Checked = False Then
m_ConnString = "Password=" & txtPassword.Text.Trim & _
";Persist Security Info=True" & _
";User ID=" & txtUserID.Text.Trim & _
";Initial Catalog=" & txtDatabase.Text.Trim & _
";Data Source=" & txtServer.Text.Trim
Else
m_ConnString = ""
End If
sqlConn = New SqlConnection(m_ConnString)
Try
'mencoba untuk membuka koneksi ke SQL Server
sqlConn.Open()
'jika koneksi berhasil maka akan mengembalikan nilai TRUE
Return True
Catch ex As Exception
MessageBox.Show(ex.Message, "Database Connect - ERROR", _
MessageBoxButtons.OK, MessageBoxIcon.Error)
'jika koneksi gagal maka akan mengembalikan nilai FALSE
Return False
Finally
'jika koneksi dalam keadaan terbuka, maka koneksi akan ditutup
If sqlConn.State = ConnectionState.Open Then
sqlConn.Close()
End If
End Try
End Function
Private Sub cbxUseWA_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbxUseWA.CheckedChanged
initWindowsAuthentication()
End Sub
Private Sub frmDatabaseConnect_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
prepare4start()
initWindowsAuthentication()
End Sub
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
Try
'ClientObject.ini merupakan file yang dibuat dengan NotePad
'hanya extention file yang diganti dari .txt menjadi .ini
If File.Exists(myPath & "ClientObject.ini") Then
File.Delete(myPath & "ClientObject.ini")
End If
If tryConnection() = True Then
'membuat file ClientObject.ini baru
SW = New StreamWriter(myPath & "ClientObject.ini")
'menulis connection string ke file text
SW.WriteLine(m_ConnString)
MessageBox.Show("Save succeed", "Database Connect - Information", _
MessageBoxButtons.OK, MessageBoxIcon.Information)
prepare4start()
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Database Connect - ERROR", _
MessageBoxButtons.OK, MessageBoxIcon.Error)
Finally
If Not SW Is Nothing Then
SW.Close()
End If
End Try
End Sub
Private Sub btnTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTest.Click
If tryConnection() = True Then
MessageBox.Show("Connection to database succeed", _
"Database Connect - Information", _
MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End Sub
End Class
Download Source Lengkap : DOWNLOAD
5 comments:
kak, #Region >> utk apa kak?
lalu text2 pd m_ConnString (yg d tampilkan d ClietObject.ini) kok letak coding ny d tryConnection() ?
apakah letak ny harus d sana?
#Region hanya berfungsi untuk mengelompokan coding saja tidak ada fungsi lain untuk memproses sesuatu.
m_ConnString diletakan pada tryConnection berfungsi untuk mencoba koneksi ke database apakah sudah berhasil, m_ConnString sendiri merupakan variabel untuk menampung Connection String dari text Notepad (ClientObject.ini)
untuk koneksi ke visual basic nya,kode nya sebanyak itu y kak?
ALHAMDULILAHHH ..
BANG THANKS BANGAD NIH =)
INI YANG LAGI SAYA CARI" =D
mantabbbbbbbbbbbbb (y)
Trus Untuk Membuat Form Login Ke Aplikasinya Gimana, Mohon DIlanjutkan Tutorialnya. TrmKsih
Post a Comment