Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/19: Рейтинг темы: голосов - 19, средняя оценка - 4.74
Level 2
 Аватар для FakiR
401 / 275 / 48
Регистрация: 22.11.2010
Сообщений: 785
Записей в блоге: 1

Сохранение данных в БД

22.03.2011, 20:29. Показов 3958. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня есть вот такой код:

C#
1
2
3
4
5
6
7
OleDbCommand insCom = new OleDbCommand("Insert into [Рабочий состав] values("....", con);
insCom.ExecuteNonQuery();
DataTable DT1 = new DataTable("[Рабочий состав]");
OleDbDataAdapter Adapter1 = new OleDbDataAdapter("Select* From [Рабочий состав]", con);
Adapter1.Fill(DT1);
dataGridView1.DataSource = DT1;
Adapter1.Update(DT1);
Что мне нужно добавить или изменить в коде? Данные добавляются на ДатаГрид, но они не сохраняются в самой базе... Спасибо всем кто постарается помочь!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.03.2011, 20:29
Ответы с готовыми решениями:

Сохранение данных из datagridview в базу данных под MS sql server 2012
Доброго времени суток. Делаю курсовую, и до этого момента думал, что самое сложное создать правильную модель данных, но оказалось...

Сохранение данных, добавленных в базу данных access
Помогите сделать сохранение добавленных данных в бд, при перезапуске программы Вот код бд: private void metroButton3_Click(object...

Сохранение данных в базу данных SQL Server
Есть база данных LocalDB с одной таблицей Notice. Так же есть две формы: одна с textBox и comboBox'ами для добавления данных, другая с...

26
13052 / 10736 / 568
Регистрация: 15.12.2010
Сообщений: 48,543
24.03.2011, 19:54
Студворк — интернет-сервис помощи студентам
Пытаюсь гуглить, но непонятно что находит.
Вот что-то про датагрид в 2003 http://support.microsoft.com/kb/819346/ru
Данное поведение является подтвержденной ошибкой продуктов Майкрософт, перечисленных в начале данной статьи..Эта ошибка была исправлена в Microsoft Visual Studio .NET (2003).
Добавлено через 38 минут
А может надо исключения написать и не будет ничего?
0
Level 2
 Аватар для FakiR
401 / 275 / 48
Регистрация: 22.11.2010
Сообщений: 785
Записей в блоге: 1
24.03.2011, 20:43  [ТС]
Цитата Сообщение от gfadsa111 Посмотреть сообщение
Добавлено через 38 минут
А может надо исключения написать и не будет ничего?
это не помогает, устал уже разбираться в этом...

Добавлено через 19 минут
Как хочется отматериться! Установил VS 2010, запустил проект через него и всё нормально сохраняется в БД!

C#
1
2
3
4
5
6
OleDbCommand insCom = new OleDbCommand("INSERT INTO [Рабочий состав] values(" + textBox1.Text + ",'" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + comboBox1.Text + "','" + textBox5.Text + "','" + Convert.ToInt32(textBox6.Text) + "','" + Convert.ToInt32(textBox7.Text) + "');", con);
insCom.ExecuteNonQuery();
DataTable DT1 = new DataTable("[Рабочий состав]");
OleDbDataAdapter Adapter1 = new OleDbDataAdapter("Select* from [Рабочий состав]", con);
Adapter1.Fill(DT1);
dataGridView1.DataSource = DT1;
Этот код вполне рабочий!!! А как эту проблему решить в VS 2005 я не понял... Перехожу на 2010, хотя были свои причины писать на VS 2005...
1
13052 / 10736 / 568
Регистрация: 15.12.2010
Сообщений: 48,543
24.03.2011, 20:47
Значит все-таки ошибки присутсвуют в ранних версиях.
0
Level 2
 Аватар для FakiR
401 / 275 / 48
Регистрация: 22.11.2010
Сообщений: 785
Записей в блоге: 1
24.03.2011, 20:54  [ТС]
Цитата Сообщение от gfadsa111 Посмотреть сообщение
Значит все-таки ошибки присутсвуют в ранних версиях.
видимо да, потому что другого объяснения не могу найти...
0
 Аватар для Алексей86
25 / 18 / 4
Регистрация: 05.04.2010
Сообщений: 85
31.03.2011, 13:54
Слушай, а какие ты значения вводил в VS2005 и в VS2010? просто если в 2005 ты вводил строковые значения в textBox3.Text, textBox2.Text, textBox4.Text и в других, то оно и не должно было исполнить команду, а вообще в дальнейшем, для того что бы узнать что делается в программе, а точнее не выдается ли ошибок то используй try/catch. И команду перепиши лучше так, если конечно поля в таблице строковые:
C#
1
OleDbCommand insCom = new OleDbCommand("INSERT INTO [Рабочий состав] values(\'" + textBox1.Text + "\',\'" + textBox2.Text + "\',\'" + textBox3.Text + "\',\'" + textBox4.Text + "\',\'" + comboBox1.Text + "\',\'" + textBox5.Text + "\'," + Convert.ToInt32(textBox6.Text) + "," + Convert.ToInt32(textBox7.Text) + ");", con);
если имеют тип int то без заключения их в одинарные ковычки:
C#
1
OleDbCommand insCom = new OleDbCommand("INSERT INTO [Рабочий состав] values(" + textBox1.Text + "," + textBox2.Text + "," + textBox3.Text + "," + textBox4.Text + "," + comboBox1.Text + "," + textBox5.Text + "," + Convert.ToInt32(textBox6.Text) + "," + Convert.ToInt32(textBox7.Text) + ");", con);
а использование try/catch вот какое, показываю на твоем примере со 2 страницы этой темы
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
try
{
DataRow newrow = _DataSet1.Tables["[Рабочий состав]"].NewRow();
newrow.BeginEdit();
newrow["Фамилия"] = "test111";
newrow["Имя"] = "test111";
newrow["Отчество"] = "test111";
newrow["Должность"] = "test111";
newrow["Форма трудовых отношений"] = "test111";
newrow["Контактный номер"] = "187949";
newrow["Заработная плата"] = "111";
newrow["ID сотрудника"] = "19";
newrow.EndEdit();
OleDbDataAdapter Adapter1 = new OleDbDataAdapter();
DataTable DT1 = new DataTable();
Adapter1.InsertCommand = new OleDbCommand("INSERT INTO [Рабочий состав] values(" + textBox1.Text + ",'" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + comboBox1.Text + "','" + textBox5.Text + "','" + Convert.ToInt32(textBox6.Text) + "','" + Convert.ToInt32(textBox7.Text) + "');", con);
_DataSet1.Tables["Рабочий состав"].Rows.Add(newrow);
DT1 = _DataSet1.Tables["Рабочий состав"].GetChanges();
Adapter1.Update(DT1);
_DataSet1.Tables["Рабочий состав"].Clear();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message, "Ошибка");
}
В этот раз будет выдаваться исключение если оно появляется и описываться суть ошибки, попробуй на 2005 поставить, и процентов 99 ошибка будет в строке которую я тебе изменил, если конечно ты введешь те значения при которых у тебя не сохранялись данные.
1
Level 2
 Аватар для FakiR
401 / 275 / 48
Регистрация: 22.11.2010
Сообщений: 785
Записей в блоге: 1
05.04.2011, 00:00  [ТС]
спасибо, но я уже понял что в одинарных ковычках была проблема
0
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 8
06.04.2011, 22:14
Добавте на событие _FormClosed что-то вроде:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
foreach (DataRow row in table1.Rows)
            {
                if (row.RowState.ToString() == "Modified")
                {
                   
   OleDbCommand MyCQ = new OleDbCommand("UPDATE [Рабочий сосотав] SET [value1] =\"" + row[1].ToString() + "\" , [value2]= \"" + row[2].ToString() + "\",[value3]= \"" + row[3].ToString() + "\", [value4]=" + row[4].ToString() + " WHERE [ID]=" + row[0].ToString(), Conn);
                    MyCQ.ExecuteNonQuery();
                }
 
                if (row.RowState.ToString() == "Added")
                {
                    OleDbCommand MyCQ = new OleDbCommand("insert into [Рабочий сосотав] ([value1],[value12],[value3]) values (\"" + row[1].ToString() + "\",\"" + row[2].ToString() + "\"," + row[3].ToString() + ")", Conn);
                    MyCQ.ExecuteNonQuery();
                }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.04.2011, 22:14
Помогаю со студенческими работами здесь

Сохранение данных из DataGridView в базу данных
AVE. У меня не получается сохранить введенные данные в бд. Оно их заносит в DGV после но в бд они не передаются. Столько в инете...

Сохранение данных с DataSet в базу данных
Здраствуйте. У меня есть датагрид который подвязан к таблице в базе. Мне нужно что бы при клике на кнопку данные которые ввели в грид...

Сохранение данных в базу данных
Добрый день, я заполняю sqladapter: private SqlDataAdapter _mainAdapter; _mainAdapter =...

Сохранение данных в бд
Я так понял эта тема уже приелась и возможно попадет в самые частые вопросы, но все таки: Имеется datagridview MySqlConnection myConn...

Сохранение данных
Есть база данных Access и форма Windows Forms. Вопрос: подскажите как мне записать в данную базу информацию с формы. Форма с базой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru