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

Как добавить во все ячейки столбца datagridview одинаковое значение auto_increment из другой таблицы MySQL?

23.11.2020, 01:29. Показов 776. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как добавить во все ячейки столбца datagridview одинаковое значение auto_increment из другой таблицы MySQL?

У меня есть таблица object в БД MySQL. В неё добавляются параметры (к примеру некая строка). Строка у которой формируется id (id_object) по auto_increment.

Как мне вставить (при сохранении) значение этого auto_increment в колонку другой таблицы, строки (параметры) которой вводятся в datagridview1 и потом по нажатию на button все параметры сохраняются одновременно с данными object по разным таблицам (works_object и object).

C#
1
2
3
4
5
6
7
8
9
10
11
            mySqlCommand = new MySqlCommand("sp_CreateUser", connection);
            mySqlCommand.CommandType = CommandType.StoredProcedure;
            for (int i = 0; i < dataGridView1.RowCount; i++)
            {
                var cells = dataGridView1.Rows[i].Cells;
                mySqlCommand.Parameters.Add(new MySqlParameter("@id_Object", id));
                mySqlCommand.Parameters.Add(new MySqlParameter("@Name_works", cells[0].Value));
                mySqlCommand.Parameters.Add(new MySqlParameter("@Size_works", cells[1].Value));
                mySqlCommand.Parameters.Add(new MySqlParameter("@Unit_of_size", cells[2].Value));
                mySqlCommand.ExecuteScalar();
            }
MySQL
1
2
3
4
5
6
7
CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_CreateUser`(in id_Object integer, in Name_works VarChar(255), in Size_works Float, in Unit_of_size VarChar(100))
Begin
SET FOREIGN_KEY_CHECKS = 0;
INSERT INTO Words_object (id_Object, Name_works, Size_works, Unit_of_size)
VALUES (id_Object, Name_works, Size_works, Unit_of_size);
SET FOREIGN_KEY_CHECKS = 1;
End
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.11.2020, 01:29
Ответы с готовыми решениями:

Как добавить значение из ячейки Datagridview в Textbox
Не могу перенести значение в текстбокс... что делать?

Как вывести значение одной ячейки таблицы из MySQL?
Как вывести из таблицы одну ячейку? Нужно вывести краткое описание статьи, оно в отдельном столбце, пока нужно для первой статьи. ...

Получить значение ячейки определенного столбца DataGridView
Доброго всем времени суток. Проблема заключается в следующем. Существует колонка под названием ID добавлена вот так :...

1
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,860
23.11.2020, 16:14  [ТС]
Проблему частично удалось, но у меня теперь вытекла проблема с добавлением именно нескольких строк вводимых из datagridview (если добавляется одна - то все нормально). Вылетает ошибка что параметр Name_works уже существует.

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
        private void button1_Click(object sender, EventArgs e)
        {
            MySqlConnection connection = new MySqlConnection(connectionString);// объект для установления соединения с БД
            connection.Open();// открываем соединение
            // запросы вставки данных в Object
            mySqlCommand = new MySqlCommand("sp_createObject", connection);
            mySqlCommand.CommandType = CommandType.StoredProcedure;
            mySqlCommand.Parameters.Add(new MySqlParameter("@id_customer", comboBox1.SelectedValue.ToString()) { DbType = DbType.Int32 });
            mySqlCommand.Parameters.Add(new MySqlParameter("@Name_object", tx1.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Start_construction", dt1.Value));
            mySqlCommand.Parameters.Add(new MySqlParameter("@End_construction", dt2.Value));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Number_contract",tx2.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Type_of_object", cb2.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Type_of_construction", cb3.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Length", tx3.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Width", tx4.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Heigth", tx5.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Name_general_work", tx6.Text));
            mySqlCommand.Parameters.Add(new MySqlParameter("@Name_proect_organization", tx7.Text));
            
            for (int i = 0; i < dataGridView1.RowCount; i++)
            {
                var cells = dataGridView1.Rows[i].Cells;
                mySqlCommand.Parameters.Add(new MySqlParameter("@Name_works", cells[0].Value));
                mySqlCommand.Parameters.Add(new MySqlParameter("@Size_works", cells[1].Value));
                mySqlCommand.Parameters.Add(new MySqlParameter("@Unit_of_size", cells[2].Value));
            }
            mySqlCommand.ExecuteScalar();
            connection.Close();
            Close();
        }
MySQL
1
2
3
4
5
6
7
8
9
10
CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_createObject`(in id_customer integer, in Name_object VarChar(255), in Start_construction Date, in End_construction Date, in Number_contract VarChar(255), in Type_of_object VarChar(255), in Type_of_construction VarChar(255), in Length Float, in Width Float, in Heigth Float, in Name_general_work VarChar(255), in Name_proect_organization VarChar(255), in Name_works VarChar(255), in Size_works Float, in Unit_of_size VarChar(100))
Begin
SET FOREIGN_KEY_CHECKS = 0;
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 (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);
 
INSERT INTO Words_object (id_Object, Name_works, Size_works, Unit_of_size)
VALUES (LAST_INSERT_ID(), Name_works, Size_works, Unit_of_size);
SET FOREIGN_KEY_CHECKS = 1;
End
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.11.2020, 16:14
Помогаю со студенческими работами здесь

Значение ячейки DataGridView из другой формы
Добрый день, уважаемые форумчане. Возникла такая задача: Есть DataGridView с двумя столбцами (утрированно) ID, Name. Столбец ID...

Как автоматически вставить значение в столбец одной таблицы взятое из столбца другой?
В БД &quot;Фирма по продаже запчастей&quot; есть таблица Цена: ID поставщика ID детали Дата изменения Новая цена И таблица Поставка: ...

Значение ячейки datagridview в textbox другой формы
На первой форме есть датагридвью, на второй текстбокс. Двойной щелчок по строке в датагридвью открывают вторую форму и нужно, чтобы...

Передать значение ячейки dataGridView в label находящийся в другой форме
Мне нужно сделать генератор теста, т.е. при нажатии на кнопку &quot;next question&quot; в label на форме должны передаваться значения из dataGridView...

Скопировать значение ячейки из другой таблицы по условию
Есть таблица (приложенный файл). Необходимо значения последнего столбика (L), скопировать в аналогичную таблицу, в которой столбик L не...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru