![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Добрый вечер форумчане. C# учу недавно, в связи с этим возникают дурацкие вопросы, на которые не так просто найти ответы. В общем имеется таблица в БД MSSql в которой всего 2 колонки, и форма на которой: 2 TextBox'a 1 Button и 1 DataGrid. Хотелось бы чтобы данные введенные в TextBox1 и TextBox2, после нажатия на Button, помещались в соответствующие колонки в таблице БД, и отображались в DataGrid'e. База подключена посредством мастера. Интересует код в обработчике событий Button.OnClick.
|
|||
|
||||
MasterOfCode |
|
|||
![]() elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Уже такой задавали. Например если пролистать страницу вниз, можно увидеть список похожих тем.
-------------------- ![]() |
|||
|
||||
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Пруфлинк в студию
|
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Добавление данных из textbox в базу MySql. Как я понимаю базы немного разные Вам не кажется?
|
|||
|
||||
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Вот что имеется на данный момент.
При нажатии на кнопку - сообщение об ошибке.
|
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
Ошибка типа "ошибка"? Или предлагаете нам угадать7 -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
||||
|
||||
mongoloid |
|
||||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 22.8.2009 Репутация: нет Всего: 1 |
Поставленную задачу - добавление записи в БД - можно решить множеством способов. Если вы работаете с использованием мастера, то почему бы не использовать преимущества, которые он дает? Самый простой способ:
Из вкладки "Источники данных" перетащите свою таблицу на форму. Автоматически получите DataGridView и DataBinding, можете добавлять/удалять/менять записи прямо в таблице. Если вам нужно делать именно так, как написали вы, т.е. кинуть два TextBox"а и через них вводить данные, то можно сделать, например, так:
Где testDataSet.test - таблица, созданная мастером при подключении источника данных. testDataSet.testRow.id, testDataSet.testRow.column1, testDataSet.testRow.column2 - это типизированные поля, созданные мастером согласно структуре вашей таблицы (нашем случае для таблицы test вида (id, column1, column2). Что касается кода, который вы привели, то сразу, что режет глаз, это текст запроса: с вашим кодом вы не получите запрос вида "INSERT INTO auth VALUES('value1','value2')". Там же ошибка с типами. Для чего конвертация Convert.ToInt32(textBox1.Text)? Она не нужна, и правильно кавычки с запятыми расставьте. Добавлено через 8 минут и 2 секунды Короче говоря, текста запроса должен выглядеть как-то так: SqlCommand("INSERT INTO Auth VALUES (" + textBox1.Text + ", " + textBox2.Text + ")"); А вот пример работающего кода для Компакт Едишн:
То, что перечислено в Params([Name], [Comment1], [Comment2]) - необязательно, можно было написать и так: "INSERT INTO Params VALUES ('Параметр1','Комментарий11','Комментарий22')" |
||||
|
|||||
D7na |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Mongoloid, огромное Вам спасибо. Все заработало.
Единственное компилятор ругался на строчки
Сообщением: Cannot implicitly convert type 'int' to 'string' Заменив их на
Все скомпилировалось. В итоге код обработчика нажатия кнопки выглядит следующим образом:
Как теперь сделать чтобы данные сохранялись в базе после добавления? При закрытии программы и открытии вновь, база данных пустая. Ответ нашел сам:
Это сообщение отредактировал(а) D7na - 18.6.2011, 11:53 |
||||||||
|
|||||||||
mongoloid |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 22.8.2009 Репутация: нет Всего: 1 |
У меня nrow.column1 = Convert.ToInt32(textBox1.Text) только потому, что в таблице test тип полей column1 и column2 - int. Поэтому потребовалось конвертировать. В вашем случае, очевидно, тип полей - string, поэтому все верно, вам не нужно конвертировать. Это сообщение отредактировал(а) mongoloid - 18.6.2011, 12:15 |
|||
|
||||
D7na |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.5.2009 Где: .net Репутация: нет Всего: нет |
Создал вторую форму, на которой 2 кнопки и 1 DataGridView. Форма предназначена для удаления данных из таблицы.
А вот с кодом для кнопки удаления записей, проблемы:
Необходимо чтобы удалялась строка выделенная в DataGrid'e. При компиляции все нормально. При выполнении программы когда я нажимаю на кнопку удаления записи компилятор выдает ошибку: "Object reference not set to an instance of an object." Объясните что я делаю не так? |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |