【发布时间】:2019-07-29 05:33:39
【问题描述】:
我来自this 的问题,但我有不同的情况。我需要DataTable 中的结果,并且我有两种可能的方法:
public static DataTable SelectDataTable(string query, string ConnectionString)
{
using (SqlConnection myConnection = new SqlConnection(ConnectionString))
{
using (SqlDataAdapter myDataAdapter = new SqlDataAdapter(query, myConnection))
{
DataTable dt = new DataTable();
myDataAdapter.Fill(dt);
return dt;
}
}
}
和
public static DataTable SelectDataTable(string query, string ConnectionString)
{
using (SqlConnection myConnection = new SqlConnection(ConnectionString))
{
using (SqlCommand cmd = new SqlCommand(query, myConnection))
{
myConnection.Open();
DataTable dt = new DataTable();
dt.Load(cmd.ExecuteReader(CommandBehavior.CloseConnection));
return dt;
}
}
}
所以我的问题是:
SqlDataAdapter + Fill()
和
SqlDataReader + DataTable + Load()
首选哪种方法?
乔尔的回答非常详细,是什么让这个问题不重复
事实上,我并没有使用SqlDataReader 的所有这些优点,我用它来填充数据表,这让我期待答案是:一样吗?!不幸的是,很难猜测引擎盖下发生了什么。
【问题讨论】:
-
乔尔的回答非常详细,是什么让这个问题不重复?
-
你可以找到-Here is the answerdr和da的区别
标签: c# sql sqldatareader sqldataadapter