投稿者 Tさん  (社会人) 投稿日時 2023/8/28 13:00:31
vb.net .netFramework 4.8
でwindowsフォームアプリを作っております。

そのなかで
Accessのデータベースに接続しデータベース一覧を取得しようとしています。
GetSchemaで第一引数を"Tables"だけでは取得できるのですが、
この中からSYSTEM TABLEを除外するために第二引数を設定するとうまくいきません。

下記のコードで実行すると
取得できず、どこがおかしいか誰かご教示頂きたいです。

独学ど素人なので色々おかしな点あると思いますがよろしくお願いします。

Property DBpath As String
Property DBID As String
Property DBPW As String
Property DataTable As DataTable

Function AllTableGet() As Boolean
 AllTableGet = False
 Try
  '接続文字列セット
  Dim odbcdrv As String = "Driver = {Microsoft Access Driver (*.mdb, *.accdb)}:DBQ=" & DBpath & "; Uld=" & DBID & "; Pwd =;" & DBPW 
  Using cn As New OdbcConnection (odbcdrv)
   cn.Open()
   DataTable= cn.GetSchema("Tables", New String(){Nothing. Nothing. Nothing. "TABLE"})
  End Using
  AllTableGet = True
 Catch ex As Exception
 End Try
End Function