Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2014, 17:06   #1
fof
Новичок
Джуниор
 
Регистрация: 10.02.2014
Сообщений: 3
По умолчанию Ошибка isert into

Код:
              
 OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;" +
                @"Data Source= C:\Users\1\Desktop\TEST\WindowsFormsApplication1\WindowsFormsApplication1\bd.accdb");

            con.Open();

            OleDbDataAdapter da = new OleDbDataAdapter("Select * from arhiv", con);
            OleDbCommandBuilder cd = new OleDbCommandBuilder(da);

            DataSet ds = new DataSet();
            da.Fill(ds, "arhiv");             
ds.Tables[0].Rows.Add();

                ds.Tables[0].Rows[i]["ФИО"] = lin[0];
                ds.Tables[0].Rows[i]["Правильный ответ 1"] = lin[1];
                ds.Tables[0].Rows[i]["Ответ 1"] = lin[2];

                ds.Tables[0].Rows[i]["Правильный ответ 2"] = lin[3];
                ds.Tables[0].Rows[i]["Ответ 2"] = lin[4];

                ds.Tables[0].Rows[i]["Правильный ответ 3"] = lin[5];
                ds.Tables[0].Rows[i]["Ответ 3"] = lin[6];

                ds.Tables[0].Rows[i]["Правильный ответ 4"] = lin[7];
                ds.Tables[0].Rows[i]["Ответ 4"] = lin[8];

                ds.Tables[0].Rows[i]["Правильный ответ 5"] = lin[9];
                ds.Tables[0].Rows[i]["Ответ 5"] = lin[10];

                ds.Tables[0].Rows[i]["Средний бал"] = lin[11];
                ds.Tables[0].Rows[i]["Дата"] = lin[12];


                da.Update(ds, "arhiv");
ошибка на da.update
INSERT INTO

помогите пожалуйста

Последний раз редактировалось Stilet; 12.02.2014 в 17:37.
fof вне форума Ответить с цитированием
Старый 12.02.2014, 22:06   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Ошибка в вызове перегрузки метода Update для DataSet.
В помощь:
DbDataAdapter.Update - метод (DataSet, String)
Streletz вне форума Ответить с цитированием
Старый 13.02.2014, 08:14   #3
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Код:
ds.Tables[0].Rows.Add();
ds.Tables[0].Rows[i]["ФИО"] = lin[0]; ...
da.Update(ds, "arhiv");
На беглый взгляд ошибка из-за такой причины:
1 - добавили в таблицу строку, 2 записали в некую строку под индексом i (заметьте, не в ту, которую добавили а просто в какую-то, если i вообще правильный индекс)
3 пытаемся апдейтнуть датасет, но мы не заносили данных в новую строку, она так и осталась пустой, чего провайдер не приемлет.

Возможное решение - метод Add может быть возвращает номер добавленной строки, его и сохранять в i либо как-то найти иным способом как определить номер добавленной строки. чтобы именно в неё писать данные.
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? ArchiCurtis Помощь студентам 2 07.04.2012 14:16
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Это ошибка Delphi или моя ошибка??? bloodeagle Общие вопросы Delphi 3 12.11.2009 15:26
...Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка... infrared Помощь студентам 0 16.04.2009 17:44