Я хочу удалить некоторые специальные символы в таблице базы данных. Я использовал сильную типизированную таблицу, чтобы сделать это. Когда я получил все данные в набор данных из базы данных и изменил его, я вызвал метод update() адаптера данных, чтобы превратить набор данных в базу данных, но он не работает.
Ниже мой код
DsTel tel = new DsTel();
DsTelTableAdapters.telephone_bkTableAdapter adapter = new DsTelTableAdapters.telephone_bkTableAdapter();
adapter.Connection = new SqlConnection(ConfigurationManager.AppSettings["SiteSqlServer"].ToString());
adapter.Fill(tel.telephone_bk);
foreach (DsTel.telephone_bkRow row in tel.telephone_bk.Rows)
{
row.telephoneNo = RemoveWhiteSpace(row.telephoneNo.ToString());
row.AcceptChanges();
}
tel.AcceptChanges();
adapter.Update(tel.telephone_bk);
Пожалуйста, дайте мне несколько идей?
Заранее спасибо.
2 ответа
Я нашел решение этой проблемы с помощью TableAdapterManager.
Ниже мой код:
Телефон DsTel = новый DsTel();
DsTelTableAdapters.telephone_bkTableAdapter adapter = new DsTelTableAdapters.telephone_bkTableAdapter();
adapter.Connection = new SqlConnection(ConfigurationManager.AppSettings["SiteSqlServer"].ToString());
adapter.Fill(tel.telephone_bk);
foreach (DsTel.telephone_bkRow row in tel.telephone_bk.Rows)
{
if (!row.IstelephoneNoNull())
{
row.telephoneNo = RemoveWhiteSpace(row.telephoneNo.ToString());
}
}
DsTelTableAdapters.TableAdapterManager mrg = new DsTelTableAdapters.TableAdapterManager();
mrg.telephone_bkTableAdapter = adapter;
mrg.BackupDataSetBeforeUpdate = true;
mrg.UpdateAll((DsTel)tel.GetChanges());
Вы звонили AcceptChanges
перед обновлением. Это означает, что в наборе данных больше нет изменений, поэтому в базу данных нечего отправлять.
Удалите все вызовы AcceptChanges
и добавьте один ПОСЛЕ обновления. то есть:
DsTel tel = new DsTel();
DsTelTableAdapters.telephone_bkTableAdapter adapter = new DsTelTableAdapters.telephone_bkTableAdapter();
adapter.Connection = new SqlConnection(ConfigurationManager.AppSettings["SiteSqlServer"].ToString());
adapter.Fill(tel.telephone_bk);
foreach (DsTel.telephone_bkRow row in tel.telephone_bk.Rows)
{
row.telephoneNo = RemoveWhiteSpace(row.telephoneNo.ToString());
}
adapter.Update(tel.telephone_bk);
tel.telephone_bk.AcceptChanges();
Похожие вопросы
Новые вопросы
dataset
Набор данных - это набор данных, обычно представляемых в виде таблицы, столбцы которых обозначают разные переменные, а строки - разные члены набора. Если вы ищете свободно доступный набор данных для каких-либо целей, рассмотрите вопрос на https://opendata.stackexchange.com.