c# - SQL命令文本到DataSet的直接方法

标签 c# sql dataset

如果我有 sql 命令,获取 DataSet 的最直接途径是什么?

string sqlCommand = "SELECT * FROM TABLE";
string connectionString = "blahblah";

DataSet = GetDataSet(sqlCommand,connectionString);

GetDataSet()
{
   //...?
}

我从 SqlConnectionSqlCommand 开始,但我在 API 中看到的最接近的是 SqlCommand.ExecuteReader()。使用此方法,我需要获取 SqlDataReader,然后手动将其转换为 DataSet。我认为有更直接的途径来完成任务。

如果更简单,DataTable 也将符合我的目标。

最佳答案

public DataSet GetDataSet(string ConnectionString, string SQL)
{
    SqlConnection conn = new SqlConnection(ConnectionString);
    SqlDataAdapter da = new SqlDataAdapter();
    SqlCommand cmd = conn.CreateCommand();
    cmd.CommandText = SQL;
    da.SelectCommand = cmd;
    DataSet ds = new DataSet();

    ///conn.Open();
    da.Fill(ds);
    ///conn.Close();

    return ds;
}

关于c# - SQL命令文本到DataSet的直接方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6584817/

相关文章:

c# - 将 JSON 列从 MySql 数据库映射到来自 Web Api 的 C# 类

sql - 是否有任何信息可以获取存储过程输入参数的默认值?

php - 我如何在创建查询时检查 mysql 数据库表字段值?

c# - 覆盖数据集设计器类中定义的 XmlRoot 属性

python - 如何从 tensorflow/keras 中下载的 tar.gz 文件加载数据?

c# - 如果需要,如何搜索和更改 XML?

c# - 使用 FirstOrDefault 时对象引用未设置为对象错误的实例

sql - 为什么内部加入过滤表比没有过滤的表慢?

c# - 从不同线程将数据添加到 DataSet 并同时在 DataGridView 中显示它们

c# - 另一个 Linqification 问题