Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Не сохраняются данные в MS SQL / 24 сообщений из 24, страница 1 из 1
28.07.2005, 19:11
    #33190339
Sergey Tokarev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Ситуация такая:
Есть OleDbConnection к MS SQL серверу
Typed dataset
В DataGrid ввожу новые записи
Делаю DataAdapter1.Update(dataSet11)
Никаких изменений в базе не происходит
Никаких исключений не возникает
Тот же код, например, в Access, работает

Я думал, что-то в настройках доступа,
но при создании или модификации Connection в Visual Studio флажки, которые
отвечают за настройку безопасности, неактивны

строка коннекшна
Integrated Security=SSPI;Packet Size=4096;Data Source=BIRD;Tag with column collation when possible=False;Initial Catalog=BCS;Use Procedure for Prepare=1;Auto Translate=True;Persist Security Info=False;Provider="SQLOLEDB.1";Workstation ID=BIRD;Use Encryption for Data=False
...
Рейтинг: 0 / 0
28.07.2005, 19:50
    #33190372
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Что скажет, перед update:
[src c#]
System.Windows.Forms.ShowDialog.Show(dataSet11.HasChanges(DataRowState.Added).ToString());
DataAdapter1.Update(dataSet11);
[/quot]

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
29.07.2005, 11:25
    #33191134
Sergey Tokarev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Блин, говорит False
И на Added, и на Modified
Что с этим делать?
...
Рейтинг: 0 / 0
29.07.2005, 12:39
    #33191425
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
....говорит False


Надо смотреть ваш код. Особенно интересует код выполняемый после внесения изменений и до вызова Update.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
29.08.2005, 12:50
    #33238685
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Sa пишет:
>
>
> ....говорит False
>
>
>
> Надо смотреть ваш код. Особенно интересует код выполняемый после
> внесения изменений и до вызова Update.

Вот мой код с такой же проблемой:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
public void NewRow(CurrencyManager crm)
{
	crm.AddNew();
	drvCars = (DataRowView)crm.Current;
	ds = (Dataset) drvCars.Row.Table.DataSet;;

	vueCities = ds.Cities_list.DefaultView;
	vueCities.Sort = "city_name";
	vueCars_list = ds.Cars_list.DefaultView;
	vueCars_list.Sort = "car_model";

	drvCars["send_date"] = DateTime.Now;

	deCarsDataSend.DataBindings.Add("EditValue", drvCars,"send_date");
	txtRPay.DataBindings.Add("EditValue",drvCars, "rpay");
			
	FillCombo(vueCities); //Заполнение ComboBox'ов
					cbCitiesList.DataBindings.Add("EditValue", drvCars, "city_id");
	cbCarsList.DataBindings.Add("EditValue", drvCars, "car_id");

	if(this.ShowDialog() == DialogResult.OK)
	{
		CargoDB.frmMain.daCars.Update(ds.Cars);
	}

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
30.08.2005, 10:03
    #33240254
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
дык а где же у вас SQLCommandBuilder ?
...
Рейтинг: 0 / 0
30.08.2005, 10:19
    #33240288
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
big-duke пишет:
> дык а где же у вас SQLCommandBuilder ?

И в каком же месте и простите на кой фиг мне нужна ссылка на
SQLCommandBuilder? (я кстатии через OLE DB провайдеры работаю)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
30.08.2005, 10:24
    #33240310
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Если вы сумлеваетесь в запросе на вставку то с ним все в порядке
более того все прекрасно работет при таком раскладе
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
if(this.ShowDialog() == DialogResult.OK)
{
	drvCars.BeginEdit();
	drvCars["city_id"] = (int)(cbCitiesList.EditValue);
	drvCars["send_date"] = deCarsDataSend.DateTime;
	drvCars["car_id"] = (int)(cbCarsList.EditValue);
	if (txtRPay.Text == String.Empty)
	{
		drvCars["rpay"] = DBNull.Value;
	}
	else
	{
		drvCars["rpay"] = Convert.ToInt16(txtRPay.Text);
	}
	drvCars.EndEdit();
	if(ds.HasChanges())
	{
		CargoDB.frmMain.daCars.Update(ds.Cars);
	}
}
else
{
	drvCars.CancelEdit();
}
Просто мне интересно почему это перестает работать имено при связи через
биндинг?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.08.2005, 06:49
    #33242385
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
А что говорит ds.HasChanges() ?

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.08.2005, 08:18
    #33242422
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
EndEdit()-а не хватает?
...
Рейтинг: 0 / 0
31.08.2005, 08:20
    #33242423
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Типа так:

Код: plaintext
1.
2.
3.
4.
if(this.ShowDialog() == DialogResult.OK)
	{
           drvCars.EndEdit();
		CargoDB.frmMain.daCars.Update(ds.Cars);
	}

?
...
Рейтинг: 0 / 0
31.08.2005, 10:14
    #33242630
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Sa пишет:
>
> А что говорит ds.HasChanges() ?
MessageBox.Show(ds.HasChanges(DataRowState.Added).ToString());
пишет false :(
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.08.2005, 10:16
    #33242637
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Артем1 пишет:
> Типа так:
>
> if(this.ShowDialog() == DialogResult.OK)
> {
> drvCars.EndEdit();
> CargoDB.frmMain.daCars.Update(ds.Cars);
> }
>
А так действительно работает :)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.08.2005, 10:40
    #33242738
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Dimyan
MessageBox.Show(ds.HasChanges(DataRowState.Added).ToString());
пишет false :(

как вариант,
можно взять BindingContext и вызвать метод EndCurrentEdit

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.08.2005, 10:40
    #33242739
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Dimyan
...
А так действительно работает :)
Posted via ActualForum NNTP Server 1.3

Этто хорошо. А где же автор топика? Ему помогло?
...
Рейтинг: 0 / 0
01.09.2005, 13:54
    #33245987
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Хе хе
Чет чушь какая то получается (раньше вроде работало)
Теперь и при редактировании данные не сохраняются
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 
if(this.ShowDialog() == DialogResult.OK) 
{
	if(ds.HasChanges())
	{
		CargoDB.frmMain.daCars.Update(ds.Cars);
	}
}
пока я drvCars.EndEdit() не поставлю, но тогда ds.HasChanges() всегда равен true, а мне нафиг ненадо гонять не измененные данные, в чем может проблема то быть? пока drvCars.EndEdit() не воткну ds.HasChanges() == false :((
...
Рейтинг: 0 / 0
01.09.2005, 14:10
    #33246050
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Коммитить данные в DataSet надо.

А вот в чем здесь стоит проблема мне не понятно:
Dimyan
а мне нафиг ненадо гонять не измененные данные

Ведь DataAdapter вызывает Update только для изменных (modified) записей, и не трогает неизменненые.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
01.09.2005, 14:51
    #33246208
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Sa пишет:
>
> Ведь DataAdapter вызывает Update только для изменных (modified) записей,
> и не трогает неизменненые.
>


Но ведь если я правильно понимаю раз ds.HasChanges() возвращает true
значит считается что данные изменены и он будет их обновлять и в саму
базу. Разве не так?

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
01.09.2005, 14:57
    #33246236
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
При таком раскладе:
Код: plaintext
1.
2.
3.
4.
5.
if(this.ShowDialog() == DialogResult.OK)
{
	drvCars.EndEdit();
MessageBox.Show(ds.HasChanges(DataRowState.Modified).ToString());
	DataSaving();
} 
DataRowState.Modified всегда true даже если я не менял данные а просто
открыл форму редактирования и закрыл ее :(
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
01.09.2005, 15:30
    #33246379
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Dimyan
DataRowState.Modified всегда true даже если я не менял данные а просто
открыл форму редактирования и закрыл ее :(

Если вы отказываетесь от изменений (например, закрываете форму) то используйте
CancelEdit() или CancelCurrentEdit() для CurrencyManager.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
02.09.2005, 09:17
    #33247472
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Да немного не такая ситуация. Я открываю форму для редактирования и
ничего не радактируя, т.е. не делая обсалютно никаких изменений нажимаю
ОК, срабатывает
Код: plaintext
1.
2.
3.
4.
5.
if(this.ShowDialog() == DialogResult.OK)
{
	drvCars.EndEdit();
	CargoDB.frmMain.daCars.Update(ds.Cars);
}
  
и ds.HasChanges()== true, но ведь это неправда, я ведь ничего не менял
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
02.09.2005, 12:41
    #33248115
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Dimyan
но ведь это неправда, я ведь ничего не менял

Меняйте логику, обычная практика это две кнопки OK и Отмена. Примером может служить графический интерфейс ОС Windows.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
02.09.2005, 13:09
    #33248201
Dimyan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Sa пишет:
>
> Меняйте логику, обычная практика это две кнопки OK и Отмена. Примером
> может служить графический интерфейс ОС Windows.
>
:)) Да это понятно, конечно ОК и Отмена есть. Просто получается что если
пользователь ничего не изменил, но всетаки нажал кнопку ОК, то
произойдет пересохранение тех же самых данных, так?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
02.09.2005, 14:11
    #33248397
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не сохраняются данные в MS SQL
Dimyan
получается что если пользователь ничего не изменил, но всетаки нажал кнопку ОК, то произойдет пересохранение тех же самых данных, так?

Нет не так. если изменений не внесены то никакого пересохранения не произойдет.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Не сохраняются данные в MS SQL / 24 сообщений из 24, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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