Dim userTables As DataTable = Nothing
Dim connection As OleDbConnection
connection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.16.0;Data Source=c:\DB.mdb")
Dim restrictions() As String = New String(3) {}
restrictions(3) = "Table"
connection.Open()
' Get list of user tables
userTables = connection.GetSchema("Tables", restrictions)
connection.Close()
' Add list of table names to listBox
Dim i As Integer
For i = 0 To userTables.Rows.Count - 1 Step i + 1
cbox.items.add(userTables.Rows(i)(2).ToString())
Next
프로그램을 DB와 연동하다 보면 필요한 소스
MDB에서 DB의 이름만을 추출하고 싶을때 사용할 수 있는 코드로~
콤보박스 하나만 두면 콤보 박스에 테이블의 이름들이 GetSchema 를 통해 추출할 수 있다.
이를 변형한 코드는 문자열 배열을 통해 이름을 배열로 추출한다.
'데이터 테이블 변수 선언
Dim userTables As DataTable = Nothing
'OLEdbConnection 선언
Dim connection As OleDbConnection
'MDB 파일 연결
connection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.16.0;Data Source=c:\DB.mdb")
Dim restrictions() As String = New String(3) {}
restrictions(3) = "Table"
'테이블의 최대 개수 100개로 설정
Dim DB_table_list As String() = New String(100) {}
connection.Open()
' Get list of user tables
userTables = connection.GetSchema("Tables", restrictions)
connection.Close()
' Add list of table names to listBox
Dim i As Integer '반복문 사용 변수
Dim table_count As Integer '테이블의 갯수 세기 변수
table_count = 0
For i = 0 To userTables.Rows.Count - 1 Step i + 1
table_count = table_count + 1
Next
'테이블 갯수 재설정
ReDim DB_table_list(table_count)
For i = 0 To table_count - 1
DB_table_list(i) = userTables.Rows(i)(2).ToString()
Next
Label1.Text = table_count & " "
For i = 0 To table_count - 1
Label1.Text = Label1.Text + DB_table_list(i) + " "
Next
MDI 폼의 ToolStripProgressBar1 활용하기 (0) | 2023.04.12 |
---|---|
[VB.net] 부모 MDI폼의 ToolStripStatusLabel 데이터 값을 자식 폼에서 변경하기 (0) | 2023.04.03 |
[Visual Basic 2022] 'Microsoft.ACE.OLEDB.16.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다.' 오류 해결 (0) | 2022.02.06 |
입력된 문자 Count 코드 (0) | 2021.12.06 |
C언어 자료구조 연결리스트(Liked-List) (0) | 2021.12.03 |