我要检索使用MS Access(:'()。
的现有系统的信息所以我在项目中添加了一个现有项目(mdb),它创建了一个与我所有表格相对应的DataSet。
完成此操作后,我尝试访问这些数据:
ClsDataSet dataSet = new ClsDataSet();
foreach (ClsDataSet.DOCDOCUMENTSRow docdocumentsRow in dataSet.DOCDOCUMENTS)
{
System.Console.WriteLine(docdocumentsRow.nom_document+"-->"+docdocumentsRow.nom_fichier);
}
System.Console.ReadLine();
仅测试...
但它没有进入foreach,似乎它认为表是空的?我直接踩了ReadLine();
所以我错过了什么?我没有任何例外..
我应该加载这样的表格吗?
谢谢!
答案 0 :(得分:3)
在您发布的代码段中,没有任何TableAdapter
填充您创建的数据集中的架构。 DataSet
只是对db-side所具有的内容的表示,因此它只是db表的结构,并不直接包含数据。
要使用数据库记录填充架构,您必须调用相关Fill
的{{1}}方法。通常,当您在TableAdapter
架构(.xsd)中拖放某个数据库表时,Visual Studio Designer会自动创建它。
答案 1 :(得分:0)
使用构造函数创建数据集尚未检索数据。您需要代码 fill (=>从MDB文件中选择行并将它们存储在数据集实例中)首先放置数据集。
最简单的方法是创建与MDB文件的ODBC连接,并使用OdbcConnection
和相应的OdbsCommand
实例创建实际连接和“SELECT”语句。
修改强>
您可以使用表适配器设计器直接连接到MDB文件。然后,您不需要创建ODBC连接。
答案 2 :(得分:0)
以下是有关连接到Access数据库的教程 - http://www.homeandlearn.co.uk/csharp/csharp_s12p4.html。底部有一个链接到该网站上的另一个页面,关于如何检索数据。