언어공부/Visual Basic
DB접속 테스트 프로그램 만들기
zzerou
2022. 12. 22. 14:32
Imports System.Data.OracleClient
Imports Oracle.ManagedDataAccess.Client
Public Class Form1
Dim connIP As String
Dim connPort As String
Dim connSERVICENAME As String
Dim connUserId As String
Dim connPassword As String
Dim conn As Oracle.ManagedDataAccess.Client.OracleConnection
Private Sub btn_connect_Click(sender As Object, e As EventArgs) Handles btn_connect.Click
Try
connUserId = lbl_ID.Text
connPassword = lbl_PW.Text
connSERVICENAME = lbl_SERVICENAME.Text
connIP = lbl_IP.Text
connPort = lbl_PORT.Text
Dim DB_STR As String = String.Format("User Id={0};Password={1};Data Source={2}:{3}/{4};", connUserId, connPassword, connIP, connPort, connSERVICENAME)
Dim DT As DataTable = Nothing
conn = New Oracle.ManagedDataAccess.Client.OracleConnection(DB_STR)
conn.Open()
If lbl_ID.Text = "" And lbl_PW.Text = "" And lbl_SERVICENAME.Text = "" Then
MessageBox.Show("빈값이 있습니다. 확인필요")
Else
If conn IsNot Nothing Then
ListBox1.Items.Add(Now.ToString("yyyyMMdd HH:mm:ss") & "------ 연결성공하였습니다.")
Else
ListBox1.Items.Add(Now.ToString("yyyyMMdd HH:mm:ss") & "------ 연결실패하였습니다.")
conn.Close()
End If
End If
Catch ex As Exception
MsgBox(ex.ToString)
If conn Is Nothing Then
conn.Close()
End If
End Try
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
If RichTextBox1.Text = "" Then
ListBox1.Items.Add(Now.ToString("yyyyMMdd HH:mm:ss") & "------ SQL구문이 없습니다.")
End If
Dim QueryStr As String = RichTextBox1.Text
SearchTable(QueryStr)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Private da As Oracle.ManagedDataAccess.Client.OracleDataAdapter
Private cb As Oracle.ManagedDataAccess.Client.OracleCommandBuilder
Private ds As DataSet
Private Sub SearchTable(queryStr As String)
Try
If queryStr.Substring(0, 1).ToUpper <> "S" Then
MessageBox.Show(Now.ToString("yyyyMMdd HH:mm:ss") & "------ DB 접속오류")
Return
End If
Dim sql As String = RichTextBox1.Text
Dim cmd As New Oracle.ManagedDataAccess.Client.OracleCommand(sql, conn)
cmd.CommandType = CommandType.Text
da = New Oracle.ManagedDataAccess.Client.OracleDataAdapter(cmd)
cb = New Oracle.ManagedDataAccess.Client.OracleCommandBuilder(da)
ds = New DataSet
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
End Class
아쉬운건 richTextBox에 세미콜론이 들어가면 sql조회 에러발생