如何从C#中的OdbcDataReader获取字段列表?
例如,对于包含两个字段的表,Field1以及Field2:
DbCommand.CommandText = "SELECT * FROM TABLE WHERE 0=1";
DbReader = DbCommand.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)
DbReader.??? 会给我一份两个要素的清单 - ["Field1","Field2"]
有这样的功能吗?
我想我知道你在寻找什么.如果您问"无论查询文本如何,您都可以列出返回数据集的字段名称,而无需访问数据库以进行模式检查吗?" 那么这对你有用:
var db = new System.Data.Odbc.OdbcConnection ( @"MyODBCSqlConnectionString" );
db.Open();
var cmd = db.CreateCommand();
cmd.CommandText = "SELECT * from MyTable";
var reader = cmd.ExecuteReader();
for( int ordinal = 0; ordinal< reader.FieldCount; ordinal++)
Console.WriteLine( "Field {0}: {1}", ordinal, reader.GetName( ordinal ) );
Run Code Online (Sandbox Code Playgroud)