У меня есть два набора данных, и мне нужно сравнить эти два набора данных, чтобы, если идентификатор не существует в одной таблице, тогда мне нужно написать вставить запрос Query else update.Сравнение двух наборов данных в C#
Для Ex:
Id in One dataset ID in second Dataset
1 1
2 2
3 4
мне нужно вставить ID 3 ко второму набору данных.
Вот мой код для справки:
if (ds.Tables[0].Rows.Count > 0 || clientDS.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
for (int j = 0; j < clientDS.Tables[0].Rows.Count; j++)
{
if (ds.Tables[0].Rows[i]["Id"].ToString() == clientDS.Tables[0].Rows[j]["Id"].ToString())
{
client.GetSingleValue("update customers set Name='" + ds.Tables[0].Rows[i]["Name"].ToString() + "',ContactPerson= '" + ds.Tables[0].Rows[i]["ContactPerson"].ToString() + "',Address='" + ds.Tables[0].Rows[i]["Address"].ToString() + "',TinNo='" + ds.Tables[0].Rows[i]["TinNo"].ToString() + "',ContactNo='" + ds.Tables[0].Rows[i]["Contactno"].ToString() + "',Report= '" + ds.Tables[0].Rows[i]["Report"].ToString() + "',Sync=0,Ids='" + ds.Tables[0].Rows[i]["Id"].ToString() + "' where id='" + ds.Tables[0].Rows[i]["Id"].ToString() + "' ");
}
else
{
client.GetSingleValue("insert into customers(id,Name,ContactPerson,Address,TinNo,ContactNo,Report,Sync,Ids) values('" + ds.Tables[0].Rows[i]["Id"].ToString() + "', '" + ds.Tables[0].Rows[i]["Name"].ToString() + "','" + ds.Tables[0].Rows[i]["ContactPerson"].ToString() + "', '" + ds.Tables[0].Rows[i]["Address"].ToString() + "', '" + ds.Tables[0].Rows[i]["TinNo"].ToString() + "', '" + ds.Tables[0].Rows[i]["Contactno"].ToString() + "', '" + ds.Tables[0].Rows[i]["Report"].ToString() + "',0,'" + ds.Tables[0].Rows[i]["Id"].ToString() + "')");
}
}
}
}
Приведенный выше код не работает. Pls исправить мою проблему.
Благодаря
Можете ли вы обрисовать как намеренный подход к работе, в основном записать шаги, которые вы хотите код взять? Я вижу, что здесь не так, но единственный способ исправить это - написать реальный код для вас, было бы лучше, если бы вы могли написать эти шаги, а затем мы можем указать на ошибки в этих шагах или ошибки в реализация. –
Boo для не использования параметризованных запросов ... –
Я думаю, вы можете сделать это во всех SQL, не нужно использовать приложение. слой. –