Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
.NET 4.x

Ошибка при попытке сохранить введенные данные из datagridview в mysql

01.11.2020, 15:21. Показов 930. Ответов 0

Студворк — интернет-сервис помощи студентам
Выбивает ошибку System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта." dataSet было null. на 59 строку.

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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Dapper;
using MySql.Data.MySqlClient;
 
namespace IT_A_stroy
{
    public partial class Form3 : Form
    {
        private SqlConnection sqlConnection = null;
        private SqlCommandBuilder sqlBuilder = null;
        private SqlDataAdapter SqlDataAdapter = null;
        private DataSet dataSet = null;
 
        readonly string connectionString = "server=localhost;user=root;database=a_stroy;password=q1w2e3r4t5y6u7i8o9p0;";
        public Form3()
        {
            InitializeComponent();
        }
 
        private void LoadDate()
        {
            try
            {
                sqlBuilder = new SqlCommandBuilder(SqlDataAdapter);
                sqlBuilder.GetInsertCommand();
            }
            catch (Exception ex)
            {
            }
            dataSet = new DataSet();
            SqlDataAdapter.Fill(dataSet, "Words_object");
            dataGridView1.DataSource = dataSet.Tables["Words_object"];
        }
 
        private void Form3_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "a_stroyDataSet.customer". При необходимости она может быть перемещена или удалена.
            this.customerTableAdapter.Fill(this.a_stroyDataSet.customer);
        }
 
        private void button1_Click_1(object sender, EventArgs e)
        {
            // объект для установления соединения с БД
            MySqlConnection connection = new MySqlConnection(connectionString);
            // открываем соединение
            connection.Open();
            // запросы
            // запрос вставки данных
            string query = "INSERT INTO Object (id_customer, Name_object, Start_construction, End_construction, Number_contract, Type_of_object, Type_of_construction, Length, Width, Heigth, Name_general_work, Name_proect_organization) VALUES ('" + comboBox1.SelectedItem + "','" + textBox1.Text + "','" + dateTimePicker1.Value.Date + "','" + dateTimePicker2.Value.Date + "','" + textBox2.Text + "','" + comboBox2.SelectedItem + "','" + comboBox3.SelectedItem + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text + "','" + textBox7.Text + "')";
            int rowIndex = dataGridView1.Rows.Count - 2;
            DataRow row = dataSet.Tables["Words_object"].NewRow();
            row["Name_works"] = dataGridView1.Rows[rowIndex].Cells["Name_works"].Value;
            row["Size_works"] = dataGridView1.Rows[rowIndex].Cells["Size_works"].Value;
            row["Uniz_of_size"] = dataGridView1.Rows[rowIndex].Cells["Uniz_of_size"].Value;
 
            dataSet.Tables["Words_object"].Rows.Add(row);
            dataSet.Tables["Words_object"].Rows.RemoveAt(dataSet.Tables["Word_object"].Rows.Count - 1);
            dataGridView1.Rows.RemoveAt(dataGridView1.Rows.Count - 2);
            SqlDataAdapter.Update(dataSet, "Word_object");
 
            // объект для выполнения SQL-запроса
            MySqlCommand command = new MySqlCommand(query, connection);
            // выполняем запрос
            command.ExecuteNonQuery();
            // закрываем подключение к БД
            connection.Close();
            Close();
        }
 
        private void button2_Click_1(object sender, EventArgs e)
        {
            Close();
        }
    }
}
Миниатюры
Ошибка при попытке сохранить введенные данные из datagridview в mysql   Ошибка при попытке сохранить введенные данные из datagridview в mysql  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.11.2020, 15:21
Ответы с готовыми решениями:

Как сохранить данные введенные в DataGridView без привязки к источникам данных
Есть форма на которой расположен DataGriedView, в который в свою очередь заносятся данные из текстбоксов. Как по нажатию кнопки...

Ошибка: Не сохраняются введенные данные из textbox в БД mysql
Подскажите в чем ошибка. см.скрины using MySql.Data.MySqlClient; using System; using System.Collections.Generic; using...

Как при обновлении формы сохранить введенные в нее данные
Как при обновлении формы сохранить введенные в нее данные . Буду очень благодарен. <form method=post name="ss"> ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2020, 15:21
Помогаю со студенческими работами здесь

DatagridView при сортировке сбрасывает введенные вручную данные
Доброго времени суток. Ситуация такая: На форме есть dgv, привязанная к БД Access через источник данных. в этот dgv через...

Как при обновлении формы сохранить введенные в нее данные через переменные
Как при обновлении формы сохранить введенные в нее данные через переменные. <form method="POST" > <p...

При попытке сохранить данные Access выдает ошибку аргумента
При попытке сохранить данные выдает ошибку аргумена. Если я сожму базу то 3-4 записи проходят а потом такая же канитель. База весит 2...

При попытке сохранить данные, в кеше они сохраняются, а в базу не записываются
День добрый. Мне требуется написать приложение по работе с БД. Базу создал, 2 связанные таблицы. Связал с элементами на форме, данные...

Ошибка при попытке сохранить таблицу после изменений
когда я что-то изменю в таблице или тип данных или добавляю поле, следует такая ошибка. посоветуйте что можно сделать. возможно я не...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в 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 и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru