c# - 如何获取 OdbcDataReader 返回的字段列表?

标签 c# odbc

如何在 C# 中从 OdbcDataReader 获取字段列表?

例如,对于具有两个字段的表,Field1Field2:

DbCommand.CommandText = "SELECT * FROM TABLE WHERE 0=1";
DbReader = DbCommand.ExecuteReader();

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 ) );

关于c# - 如何获取 OdbcDataReader 返回的字段列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319848/

相关文章:

c# - LINQ 的 Enumerable.Take 方法在速度方面是否与 SQL 的 TOP 相当?

c# - 在 C# 中激活数据透视表总计的显示详细信息

c# - ExecuteRegisteredAsyncTasks 是否释放请求处理线程来服务其他请求?

vb6 - 指定ODBC的默认驱动程序

r - 从 R/DBI/ODBC 调用 SQL 服务器上的存储过程时避免生成动态 SQL

linux - 跟踪 ODBC 对 Informix Client for Linux 的调用

c# - 如何从 GridView 中的模板字段中获取值?

c# - 如何找到正在检测 EventSystem.current.IsPointerOverGameObject 的对象?

r - 辛巴雅典娜 ODBC : unable to use SQLGetPrivateProfileString functions

mysql - 从 UserDSN 或 ODBC 文件创建 "Workbook.Connections("MyDBx").ODBCConnection"