VB 에서 오라클 DB 조회

1. 오라클 클라이언트를 설치하고

2. TNS 설정을 해주고.

3. ADODB를 이용해 접속 하면 됩니다.

예제 코드는 아래와 같습니다.

전체 소스 보기




주요 서브루틴을 설명하면..

Private Sub dbCon() 에서 오라클 DB에 연결하고,

Private Sub Command1_Click() 에서는 쿼리를 이용해 실제 Data를 가져와서
MSFlexGrid에 데이타를 넣습니다.

Private Sub btnExport_Click() 에서는 엑셀을 열어 워크시트를 하나 생성하고,
MSFlexGrid에 있던 데이타를 넣습니다.

오랜만에 VB를 할려니 삽질이네요.
하지만 역시 잘아는 VC보다도 생산성이 좋네요 ㅎㅎ

MDI에서 특정 자식창을 하나만 띄우기

Public Sub OpenDlg()

   Dim frm As Form

   ' 존재할 경우 존재하는 폼을 활성화
   For Each frm In Forms
       If TypeOf frm Is frmChild Then
           frm.SetFocus
           Exit Sub
       End If
   Next frm
   
   ' 존재하지 않을 경우 새로 만든다.

   Set frm = New frmChild

   frm.Show

End Sub

항상 위 효과 내기

'항상 위
   SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3

'항상 위  해제
   SetWindowPos Me.hwnd, -2, 0, 0, 0, 0, 3

폴더 만들기 ( 부모 폴더가 없을경우에는 부모 폴더도 만듬)

' 경로를 만든다.
Public Function MakeDir(ByVal strpath As String) As Boolean

   If strpath = "" Then Exit Function
   
   strpath = Replace(strpath, "/", "\")

   If Right(strpath, 1) = "\" Then strpath = Mid(strpath, 0, Len(strpath) - 1)
   
   If Dir(strpath, vbDirectory) <> "" Then
   
       MakeDir = True
       Exit Function
   
   End If
   
   MakeDir = MakeDir(ExtractDir(strpath))
   
   MkDir (strpath)

End Function

전체 경로를 받아 파일명 또는 폴더명만 얻기

' 전체경로명에서 파일이름만 구한다.
Public Function ExtractFileName(ByVal strpath As String) As String

   strpath = StrReverse(strpath)
   If InStr(strpath, "\") > 0 Then
       strpath = Left(strpath, InStr(strpath, "\") - 1)
   End If
   ExtractFileName = StrReverse(strpath)
   
End Function


' 전체경로명에서 경로명만 구한다.
Public Function ExtractDir(ByVal strpath As String) As String

   Dim n
   n = Len(ExtractFileName(strpath))
   
   ExtractDir = strpath
   If n > 0 And (Len(strpath) - n - 1) > 0 Then ExtractDir = Left(strpath, Len(strpath) - n - 1)
   
End Function