powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
8 сообщений из 8, страница 1 из 1
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38587599
mdm114
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть dataset, которая заполняется sqldataAdapter -ом. Внутри адаптера код

SELECT id, family, name, number,.....FROM traktor WHERE(number='Huynday220') AND (YEAR(dat)='2014') AND (MONTH(dat)='2')

Код: c#
1.
2.
3.
4.
5.
private void Form1_Load(object sender, EventArgs e)
        {

            sqlDataAdapter1.Fill(dataSet11);
        }



Все работает ок. Вношу вручную изменения в dataGridView. потом делаю sqlDataAdapter1.Update(dataSet11); Все ок!

Теперь все тоже самое, но следующим образом

Код: c#
1.
2.
3.
4.
5.
6.
string sel1 = "SELECT id, family, name, number, ..... FROM traktor WHERE(number='{0}') AND (YEAR(dat)='{1}') AND (MONTH(dat)='{2}')  ORDER BY dat " ;


sqlDataAdapter1.SelectCommand.CommandText = String.Format(sel1, "Huynday220", 2014, 2);
   
            sqlDataAdapter1.Fill(dataSet11);


Все заполняется, НО! при попытке внести измения и сохранить(sqlDataAdapter1.Update(dataSet11)) выскакивает ошибка "Нарушение параллелизма. Update command затронула 0 из ожидаемых 1 записей.

Собственно вопрос, с чем это связано? Появилось это после перехода на Visual Studio 2012. В 2008 вроде все работало норм
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38587654
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mdm114,

текст update запроса напишите руками...
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38587817
mdm114
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
поможет? Честно говоря, не разу не приходилось, всегда пользовался встроенным. Ща буду смотреть как это делается..
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38588720
mdm114
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как поймать строку или строки, в которые необходимо вносить изменения?

Код: c#
1.
2.
3.
string str22 = "UPDATE traktor SET proch = @proch";
          sqlDataAdapter1.UpdateCommand.CommandText = String.Format(str22);        
sqlDataAdapter1.Update(dataSet11);



А то при таком подходе, вставляет одну и ту же запись во все строки. Я заранее извиняюсь за ламерский вопрос. Просто во всех книжках, которые я просмотрел, все внимание уделяется исключительно команде SELECT. Может кто кусок кода даст?
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38590342
igr_ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mdm114А как поймать строку или строки, в которые необходимо вносить изменения?

Код: c#
1.
2.
3.
string str22 = "UPDATE traktor SET proch = @proch";
          sqlDataAdapter1.UpdateCommand.CommandText = String.Format(str22);        
sqlDataAdapter1.Update(dataSet11);



А то при таком подходе, вставляет одну и ту же запись во все строки. Я заранее извиняюсь за ламерский вопрос. Просто во всех книжках, которые я просмотрел, все внимание уделяется исключительно команде SELECT. Может кто кусок кода даст?
При запуске дизайнера напишите в команде SELECT "select * from traktor" и посмотрите,какие у вас сформируются команды для insert,update,delete. Это то, что вам надо. Их можно просто оставить, а SELECT изменить
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38590816
mdm114
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
igr_ok,

не совсем понял. Т.е проблема не в Update, а в неправильной команде Select ?
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38591196
igr_ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mdm114igr_ok,

не совсем понял. Т.е проблема не в Update, а в неправильной команде Select ?Проблема в Update. Но формируется он на основании вашего Select. Если у вас в таблице нет первичного ключа или в запросе больше одной таблицы, Update вообще не сгенерируется. Тогда его нужно писать вручную. В вашем случае он будет выглядеть как-то так
UPDATE traktor SET proch = @proch where id=@id
А если код будет создан дизайнером, да еще с использованием оптимистической блокировки, то будет много букв :) Но при этом всё будет работать и вам нужно будет только вызывать sqlDataAdapter1.Update
...
Рейтинг: 0 / 0
Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
    #38591211
mdm114
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, буду пытаться разбираться...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Еще раз про нарушение параллелизма и SqlDataAdapter.Update(dataSet)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]