通过GetSchema()方法获取表的列

时间:2012-06-22 16:50:41

标签: c# ado.net schema

我想在GetSchema中使用ADO.Net方法获取表格的列表,我的代码是:

var dtCols = con.GetSchema("Columns", new[] { "DBName", "TableName" });

我得到一个空DataTable,问题是什么?

3 个答案:

答案 0 :(得分:23)

您必须为“所有者”限制指定参数。

var dtCols = con.GetSchema("Columns", new[] { "DBName", null, "TableName" });

答案 1 :(得分:0)

这两个答案是否可以通过以下方式进行概括:

dtCols = con.GetSchema("Columns", new[] {con.DataSource, null, "TableName"});

这假设" TableName"是您想要架构的表的名称。

答案 2 :(得分:0)

我有类似的问题,以下工作..

using(SqlCommand command = new SqlCommand(sqlText, con)) {
    var sqlReader = command.ExecuteReader();
    var a = sqlReader.GetColumnSchema();                        
}