powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Изменения в DataGridView
3 сообщений из 3, страница 1 из 1
Изменения в DataGridView
    #38264307
Dia28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, помогите пожалуйста разобраться как сохранить изменения -добавление удаление и изменение,
Данные отображаются в DataGridView,
изменяем значение в одном из полей, и нажимаем на кнопочку Сохранить изменения,
но
Нарушение параллелизма: UpdateCommand затронула 0 из ожидаемых 1 записей.
на строке

Код: c#
1.
add.Update(upd);



либо пробовала явно изменять но ничего не произошло,
прошу вашей помощи, уже отчаялась

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
 public partial class Form1 : Form
    {

        private DataSet ds = new DataSet();
        private DataTable dt = new DataTable();
        static string connstring = "Server=localhost;Port=5432; User Id=postgres;Password=4353;Database=Pohta;";
        NpgsqlConnection conn = new NpgsqlConnection(connstring);
        public Form1()
        {  
        
            InitializeComponent();
          //Открыть соединение 
            conn.Open();
        }
//Функция изменения
        public void Update(DataTable upd, string table)
        {

            NpgsqlDataAdapter add = new NpgsqlDataAdapter("select * from " + table, conn);
            NpgsqlCommandBuilder com = new NpgsqlCommandBuilder(add);

            add.DeleteCommand = com.GetDeleteCommand();
            add.UpdateCommand = com.GetUpdateCommand();
            add.InsertCommand = com.GetInsertCommand();

            add.Update(upd);
     }
//Вывести содержимое таблицы Newspapres в DataGridView
        private void button1_Click(object sender, EventArgs e)
        {
            
            string sql = "SELECT * FROM \"Newspapers\"";
            NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);
            ds.Reset();
            da.Fill(ds);
            dt = ds.Tables[0];
            dataGridView1.DataSource = dt;
           
        }
//Кнопка сохранить изменеия
        private void button2_Click(object sender, EventArgs e)
        {
          
            Update((DataTable)dataGridView1.DataSource, "\"Newspapers\"");
        }
//явное изменеие
 private void button3_Click(object sender, EventArgs e)
        {
             
          string sql18 = "Update \"Newspapers\" set \"Price\"=" + textBox1.Text + " where \"Name\"= \'" + textBox2.Text + "\') ;";
            NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql18, conn);
        }
}
...
Рейтинг: 0 / 0
Изменения в DataGridView
    #38265489
Фотография Пылесос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dia28,

А где сам update? Select вижу, разве запрос на обновление писать не нужно? Напишите update в Вашей функции обновления
...
Рейтинг: 0 / 0
Изменения в DataGridView
    #38269176
WitC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dia28,
после инициализации CommandBuider, в процедуре Update выполнить
Код: c#
1.
com.ConflictOption = System.Data.ConflictOption.OverwriteChanges;
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Изменения в DataGridView
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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