1
在我的c#mvc 4應用程序項目中,我們需要從sqlquery中取數據然後填入C#數據表。 我們必須填寫超過5百萬行和12列的數據表。datatable加載大數據c#
如果數據已經< 100萬的申請需要3分鐘。如果它> 100萬系統被吊死,則爲 。
這是我正在使用的代碼。
public DataTable GetTheData()
{
DataTable dtDataTablesList = new DataTable();
string NewconnectionString ="Mycooectionstring";
SqlConnection spContentConn = new SqlConnection(NewconnectionString);
string sqlselectQuery = "select * from table";
try
{
spContentConn.Open();
SqlCommand sqlCmd = new SqlCommand(sqlselectQuery, spContentConn);
sqlCmd.CommandTimeout = 0;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.ExecuteNonQuery();
SqlDataAdapter adptr = new SqlDataAdapter(sqlCmd);
adptr.Fill(dtDataTablesList);
spContentConn.Close();
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (spContentConn != null)
spContentConn.Dispose();
}
return dtDataTablesList;
}
您打算如何處理1M記錄?你無法在任何地方展示他們。處理它們是數據庫的用途。 Web應用程序永遠不會運行得更快,因爲寫入的查詢具有合適的索引。你想做什麼? –
順便說一句,你應該使用'use'塊代替這個'try/finally'和外部的'catch',它只是簡單地打破了調用堆棧。 –