云服务器免费试用

OleDbDataReader查询出的结果如何转换成DataTable啊

服务器知识 0 1030

要将OleDbDataReader查询结果转换为DataTable,可以按照以下步骤进行操作:
1. 创建一个空的DataTable对象。
```
DataTable dataTable = new DataTable();
```
2. 使用OleDbDataReader的GetSchemaTable方法获取查询结果的模式信息,并将其添加到DataTable中。
```
DataTable schemaTable = reader.GetSchemaTable();
foreach (DataRow row in schemaTable.Rows)
{
DataColumn column = new DataColumn();
column.ColumnName = row["ColumnName"].ToString();
column.DataType = (Type)row["DataType"];
dataTable.Columns.Add(column);
}
```
3. 使用OleDbDataReader的Read方法,逐行读取查询结果并将其添加到DataTable中。
```
while (reader.Read())
{
DataRow dataRow = dataTable.NewRow();
for (int i = 0; i {
dataRow[i] = reader.GetValue(i);
}
dataTable.Rows.Add(dataRow);
}
```
完整示例代码如下:
```csharp
DataTable dataTable = new DataTable();
DataTable schemaTable = reader.GetSchemaTable();
foreach (DataRow row in schemaTable.Rows)
{
DataColumn column = new DataColumn();
column.ColumnName = row["ColumnName"].ToString();
column.DataType = (Type)row["DataType"];
dataTable.Columns.Add(column);
}
while (reader.Read())
{
DataRow dataRow = dataTable.NewRow();
for (int i = 0; i {
dataRow[i] = reader.GetValue(i);
}
dataTable.Rows.Add(dataRow);
}
```
这样,OleDbDataReader查询结果就会转换为DataTable对象。

OleDbDataReader查询出的结果如何转换成DataTable啊

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942@qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: OleDbDataReader查询出的结果如何转换成DataTable啊
本文地址: https://solustack.com/52187.html

相关推荐:

网友留言:

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。