Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何获取datatable中每个字段的数据库表名_C#_Sql Server - Fatal编程技术网

C# 如何获取datatable中每个字段的数据库表名

C# 如何获取datatable中每个字段的数据库表名,c#,sql-server,C#,Sql Server,我知道如何获取数据表中的字段名: col.ColumnName 如何获取数据库表名(不是DataTable.TableName)?数据库表名不会在DataTable中返回。您应该从用于填充数据表的select语句(如果是proc,请查看proc代码)中知道表名数据表中不返回数据库表名。您应该从select语句中知道表名(如果是proc,请查看proc代码),该语句用于填充DataTableDataTable是内存中的表。它不跟踪它是从哪个数据库表中填充的 假设我使用这个select语句填充一个

我知道如何获取
数据表中的字段名

col.ColumnName

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

数据库表名不会在
DataTable
中返回。您应该从用于填充
数据表的select语句(如果是proc,请查看proc代码)中知道表名
数据表中不返回数据库表名。您应该从select语句中知道表名(如果是proc,请查看proc代码),该语句用于填充
DataTable
DataTable
是内存中的表。它不跟踪它是从哪个数据库表中填充的

假设我使用这个select语句填充一个数据表

select * from foo,bar where foo.id = bar.id
现在告诉我DataTable名称应该是什么

您可以做的是在填充datatable时,给它一个如下的表名

mydatatable = new DataTable("SomeTableName");

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

假设我使用这个select语句填充一个数据表

select * from foo,bar where foo.id = bar.id
现在告诉我DataTable名称应该是什么

您可以做的是在填充datatable时,给它一个如下的表名

mydatatable = new DataTable("SomeTableName");

在本例中,我使用DB视图作为select语句。所以在我的例子中,
DataTable
中大约有15个DB表和一些重叠的字段,所以我不知道它们来自哪里。但看起来根本不可能。至少我知道并且可以尝试不同的方法。是的,那是不可能的。如果您有权访问视图定义,则可以从该定义中获取信息。在本例中,我使用DB视图作为select语句。所以在我的例子中,
DataTable
中大约有15个DB表和一些重叠的字段,所以我不知道它们来自哪里。但看起来根本不可能。至少我知道并且可以尝试不同的方法。是的,那是不可能的。如果您有权访问视图定义,则可以从该定义中获取信息。当做