将访问文件读入DataSet [英] Read Access File into a DataSet

查看:150
本文介绍了将访问文件读入DataSet的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



或者至少要将整个Access文件(.mdb)读入.NET中的DataSet(特别是C#或VB)?从访问文件获取表的列表,以便我可以循环遍历它,并将它们一次添加到DataSet中。

解决方案

p>感谢您的建议。我可以使用这些样本把这个代码放在一起,这似乎实现了我正在寻找的东西。

 使用cn = New OleDbConnection(connectionstring)
cn.Open()
Dim ds As DataSet = new DataSet()

Dim Schema As DataTable = cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,New Object(){Nothing,Nothing,Nothing,TABLE})
对于i As Integer = 0 To Schema.Rows.Count - 1
Dim dt As DataTable = New DataTable(Schema.Rows(i )!TABLE_NAME.ToString())

使用adapter = New OleDbDataAdapter(SELECT * FROM+ Schema.Rows(i)!TABLE_NAME.ToString(),cn)
adapter.Fill (dt)
结束使用

ds.Tables.Add(dt)
下一步i
结束使用


Is there an easy way to read an entire Access file (.mdb) into a DataSet in .NET (specifically C# or VB)?

Or at least to get a list of tables from an access file so that I can loop through it and add them one at a time into a DataSet?

解决方案

Thanks for the suggestions. I was able to use those samples to put together this code, which seems to achieve what I'm looking for.

Using cn = New OleDbConnection(connectionstring)
    cn.Open()
    Dim ds As DataSet = new DataSet()

    Dim Schema As DataTable = cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, New Object() {Nothing, Nothing, Nothing, "TABLE"})
    For i As Integer = 0 To Schema.Rows.Count - 1
        Dim dt As DataTable = New DataTable(Schema.Rows(i)!TABLE_NAME.ToString())

        Using adapter = New OleDbDataAdapter("SELECT * FROM " + Schema.Rows(i)!TABLE_NAME.ToString(), cn)
            adapter.Fill(dt)
        End Using

        ds.Tables.Add(dt)
    Next i
End Using

这篇关于将访问文件读入DataSet的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆