How can I get all column names from a table in an Access database using VB.NET? With some articles on the Internet that I've tried, the result given is just the database schema. Is there any solution for this?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You need to pass the name of the collection you are interested in to the GetSchema
method. In the case of the columns collection, you also need to pass in an array of strings to filter the returned values.
Dim connectionString = csb2.ToString
Dim tableName = "Sales Reports"
Dim filterValues = {Nothing, Nothing, tableName, Nothing}
Using conn = New OleDbConnection(connectionString)
conn.Open
Dim columns = conn.GetSchema("Columns", filterValues)
For Each row As DataRow In columns.Rows
Console.WriteLine("{0,-20}{1}",row("column_name"),row("data_type"))
Next
End Using
See here.