我一直在試圖更新一個擁有100萬條記錄並將其字段的NULL值替換爲空字符串(「」)的表。 Foreach和似乎需要很長時間。我花了1分鐘更新3 000條記錄。有更簡單的方法來更新表使用LINQ或可能的程序?LINQ更新表用EmptyString替換NULL 100萬條記錄
這是我此刻的使用,但它永遠需要,我可能需要經常這樣做:
foreach (MG_Backup item in mg)
{
lblAllNulls.Text +="<br />ID:"+item.ID+" ";
if (item.Name == null)
{
item.Name = "";
lblAllNulls.Text += "Name ";
}
if (item.Company == null)
{
item.Company = "";
lblAllNulls.Text += "Company ";
}
if (item.Addr1 == null)
{
item.Addr1 = "";
lblAllNulls.Text += "Addr1 ";
}
if (item.Addr2 == null)
{
item.Addr2 = "";
lblAllNulls.Text += "Addr2 ";
}
if (item.FullAddress == null)
{
item.FullAddress = "";
lblAllNulls.Text += "FullAddress ";
}
if (item.City == null)
{
item.City = "";
lblAllNulls.Text += "City ";
}
//saves the changes
db.SaveChanges();
}
這聽起來像一個存儲過程的工作。 – asawyer 2013-04-04 12:37:47
你不能通過SQL更新語句來完成嗎? – Richard 2013-04-04 12:37:58
但我有5個字段,我需要檢查它們是否爲空,並且它們中的任何一個都不得在同一時間爲null。一個字段可能爲空,下一個記錄可能有另一個字段爲空,所以基本上我將不得不運行5個更新語句超過100萬條記錄..這將需要很多時間..我認爲... – Nathan 2013-04-04 12:41:00