【问题标题】:how to get database table name for each field in datatable如何获取数据表中每个字段的数据库表名
【发布时间】:2012-08-16 11:54:17
【问题描述】:

我知道如何获取DataTable 中的字段名称:

col.ColumnName

如何获取数据库表名(不是DataTable.TableName)?

【问题讨论】:

    标签: c# sql-server


    【解决方案1】:

    DataTable 中未返回数据库表名。您应该从用于填充 DataTable 的 select 语句中知道表名(如果是 proc,请查看 proc 代码)

    【讨论】:

    • 在这种情况下,我使用数据库视图作为我的选择语句。所以在我的例子中,DataTable 中有大约 15 个数据库表和一些重叠的字段,所以我不知道它们来自哪里。但看起来这根本不可能。至少我知道并且可以尝试不同的方法。
    • 是的,这是不可能的。如果您有权访问它,您可以从视图定义中获取信息。问候。
    【解决方案2】:

    DataTable 是内存中的一个表。它不会跟踪它是从哪个数据库表中填充的。

    假设我正在使用这个 select 语句来填充一个 DataTable

    select * from foo,bar where foo.id = bar.id
    

    现在告诉我数据表的名称应该是什么。

    你可以做的是在填充数据表时,给它一个这样的表名

    mydatatable = new DataTable("SomeTableName");
    

    【讨论】:

      猜你喜欢
      • 2010-10-25
      • 1970-01-01
      • 2020-08-15
      • 2015-06-21
      • 2015-07-25
      • 2021-06-17
      • 2021-03-26
      • 1970-01-01
      相关资源
      最近更新 更多