VC#2008:从DataTable中获取表名到ComboList/如何合并来自2个MDB的表?
我正在编写的程序的目的就是为了解决这个问题: 有两个用户,每个用户保存到.MDB文件。一个用户拥有一半的更新/正确信息(另一半已过时),另一个用户拥有一半的信息(另一半已过时) User1:25%+25%=50%所需的当前信息其他50%已过时 User1处理4项中的2项 User2:25%+25%=50%当前需要的信息其他50%已过时 User2处理4项中的2项 我需要从User1中提取50%(4项中的2项),然后将其添加到User2中,使其100%为当前(4项中的4项) 它们的SQL样式表结构(无论如何应该)是相同的(但如果可能的话,我想提供一个事件,其中添加了一个新表,我知道) 如果我能找到如何从DataTable中获取所有表名,我就可以系统地对DataTable进行数组,并用我知道需要更新的另一个.MDB文件中的表替换这些表。我知道DataSet有“DataSet.Tables”…但这对我帮助不大 如果我能做到这一点,我还可以将表添加到组合框中,并在组合框中显示的位置创建功能,这就是我将在数据网格中列出的表 如果你们中有人对如何着手做这件事有任何想法(或者如果你们甚至理解我说的话),请让我知道。我已经完成了70%的项目,这些似乎是我最后的逻辑障碍。我想我解释对了VC#2008:从DataTable中获取表名到ComboList/如何合并来自2个MDB的表?,c#,ms-access,datagridview,datatable,C#,Ms Access,Datagridview,Datatable,我正在编写的程序的目的就是为了解决这个问题: 有两个用户,每个用户保存到.MDB文件。一个用户拥有一半的更新/正确信息(另一半已过时),另一个用户拥有一半的信息(另一半已过时) User1:25%+25%=50%所需的当前信息其他50%已过时 User1处理4项中的2项 User2:25%+25%=50%当前需要的信息其他50%已过时 User2处理4项中的2项 我需要从User1中提取50%(4项中的2项),然后将其添加到User2中,使其100%为当前(4项中的4项) 它们的SQL样式表结构
我认为他是对的!我认为数据表只是一个表,而数据集是一组表。考虑到这一点,如何将.MDB文件中的所有表列在数据集中?这将完美地解决我的问题。我认为DataTable对象只是一个表,而DataSet包含一对多的DataTable 如果要查找DataTable的实际名称,可以通过
DataTable.TableName
属性访问该名称
编辑:如果要将DataTables添加到DataSet对象中,只需创建一个新的DataSet,然后使用.add()方法
然后,您应该能够通过访问每个DataTable的TableName属性来循环数据集并检索表名:
For each table as DataTable in DS.Tables
Console.Writeline(table.TableName)
Next
下次,不要把你所有的问题都放在标题里……最后,什么是表格?(辛普森参考资料)我想当它要求详细说明时,我太认真了。对不起,我是新来的@Remou:为什么要系统地删除MDB标签,并用MS-ACCESS替换它们?这是有误导性的,因为“MDB”通常只是指“Jet/ACE”,即数据库引擎,而不是访问。我认为你让事情变得更糟了。您是否考虑过用“MS-JET/ACE”标签替换它们?这是某个有组织的标记编辑项目的一部分吗?如果是这样的话,我们在哪里可以找到讨论?请看我认为你是对的!考虑到这一点。。。如何将所有数据表添加到数据集中?很抱歉,如果我的代码是用VB编写的,这是我工作时一直使用的语言,因此每次在这里编写代码时,我似乎都忘记了,总是使用VB版本。如果你只是把它转换成C#语法,应该没问题。那么我可以把所有的表放在一个.Txt中…循环它们…将它们添加到DataTable,然后将其添加到数据集吗?这将起作用,这是令人兴奋的,但我希望有一种方法可以动态地做到这一点!哈哈,真有趣…我都没意识到。C#>VB:)
For each table as DataTable in DS.Tables
Console.Writeline(table.TableName)
Next