powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проблемма с обновлением таблицы (MS SQL & C#)
3 сообщений из 3, страница 1 из 1
Проблемма с обновлением таблицы (MS SQL & C#)
    #32227615
Dronopotamus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!
Помогите разрешить проблемму с обновлением таблицы в MSSQL
Обновляю так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
this.sqlDataAdapter1.Fill(this.dataSet1);
this.sqlDataAdapter2.Fill(this.dataSet2);
for (int i= 0 ; i<this.dataSet1.Tables[ 0 ].Rows.Count; i++)
{
     System.Data.DataRow newrow = this.dataSet2.Tables[ 0 ].NewRow();
     newrow.ItemArray.SetValue(this.dataSet1.Tables[ 0 ].Row[i].ItemArray.GetValue( 0 ),  0 );
     newrow.ItemArray.SetValue(this.dataSet1.Tables[ 0 ].Row[i].ItemArray.GetValue( 1 ),  1 );
     newrow.ItemArray.SetValue(i,  2 );
     this.dataSet2.Tables[ 0 ].Rows.Add(newrow);
}
this.sqlDataAdapter2.Update(this.dataSet2);


Содержимое таблицы в базе, соотв. dataSet2.Tables[0], не меняется после команды update :(
В базу захожу как sa, команда Update и Insert sqlDataAdapter'а выглядят так:

INSERT INTO date_inf
(date_of_contact, id_c, ind)
VALUES (@date_of_contact, @id_c, @ind)

UPDATE date_inf
SET date_of_contact = @date_of_contact, id_c = @id_c, ind = @ind
WHERE (ind = @Original_ind) AND (date_of_contact = @Original_date_of_contact) AND (id_c = @Original_id_c) OR
(ind = @Original_ind) AND (date_of_contact IS NULL) AND (id_c = @Original_id_c) AND (@Original_date_of_contact IS NULL) OR
(ind = @Original_ind) AND (date_of_contact = @Original_date_of_contact) AND (id_c IS NULL) AND (@Original_id_c IS NULL) OR
(ind = @Original_ind) AND (date_of_contact IS NULL) AND (id_c IS NULL) AND (@Original_date_of_contact IS NULL) AND (@Original_id_c IS NULL)

В чём может быть причина? Очень прошу помочь.
...
Рейтинг: 0 / 0
Проблемма с обновлением таблицы (MS SQL & C#)
    #32228014
sandy2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это вариант работает, возможно у Вас что-то с объектами ItemArray.
В моем тестовом примере cl_key - первичный ключ.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
this.sqlDataAdapter1.Fill(this.dataSet11, "tst1" );
	this.sqlDataAdapter2.Fill(this.dataSet21, "tst2" );
	for (int i= 0 ; i<this.dataSet11.Tables[ 0 ].Rows.Count; i++)
	{
		System.Data.DataRow newrow = this.dataSet21.Tables[ 0 ].NewRow();
		newrow[ "client" ]=this.dataSet11.Tables[ 0 ].Rows [i][ "client" ];
		newrow[ "cl_key" ]=this.dataSet11.Tables[ 0 ].Rows [i][ "cl_key" ];
		this.dataSet21.Tables[ 0 ].Rows.Add(newrow);
	}
	this.sqlDataAdapter2.Update(this.dataSet21);
...
Рейтинг: 0 / 0
Проблемма с обновлением таблицы (MS SQL & C#)
    #32228197
Dronopotamus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо за ответ!

Я попробовал ваш код - результат такой-же, т.е. dataSet2.Tables[0] заполняется данными (как и в моём случае, ИМХО ItemArray тут не причём), но эти данные не переносятся в базу.
Я думаю проблемма либо с sqlDataAdapter либо с MSSQL.
Да, таблицу в MSSQL2000 я экспортировал из MSSQL6.5, может требуются дополнительные настройки?
Буду благодарен за любую помощь.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проблемма с обновлением таблицы (MS SQL & C#)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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