Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
2 / 2 / 1
Регистрация: 22.09.2014
Сообщений: 132

Вставка и изменение данных выводимых в DataGridView из удаленной MySQL БД

22.02.2016, 13:28. Показов 1904. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть несколько моментов которые вызывают ступор в логике и реализации.

Пишу что-то типа небольшой CRM )))
На CRM это конечно с трудом тянет, но все же.
на сейчас проблем с выводом данных нет проблем, но вот с их изменением как бы есть...

Кликните здесь для просмотра всего текста

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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using System.Data.Sql;      //mySQL
using System.Data.Common;   //mySQL
using System.Data.OleDb;
 
namespace CRM
{
    public partial class Form1 : Form
    {
 
        private MySqlDataAdapter da;
        private DataSet ds;
 
        string serverName = "sql2.freemysqlhosting.net";
        string dbUserName = "name";
        string dbName = "nameDB";
        string dbPort = "3306";
        string pass = "pass";
 
        public Form1()
        {
            InitializeComponent();
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                string connStr = "server=" + serverName +
                                ";user=" + dbUserName +
                                ";database=" + dbName +
                                ";port=" + dbPort +
                                ";password=" + pass + ";";
                MySqlConnection conn = new MySqlConnection(connStr);
                conn.Open();
                string sql = "SELECT NameCompany, ContactName FROM CompanyDB, ContactNameOfCompany WHERE CompanyDB.ContactName_id=ContactNameOfCompany.Id"; 
                MySqlConnection connection = new MySqlConnection(connStr);
                MySqlCommand sqlCom = new MySqlCommand(sql, connection);
                connection.Open();
                sqlCom.ExecuteNonQuery();
                MySqlDataAdapter dataAdapter = new MySqlDataAdapter(sqlCom);
                DataTable dt = new DataTable();
                dataAdapter.Fill(dt);
                
                da = new MySqlDataAdapter("SELECT NameCompany, ContactName, ContactTelephonNumber FROM CompanyDB, ContactNameOfCompany WHERE CompanyDB.ContactName_id=ContactNameOfCompany.Id", conn);
                ds = new DataSet();
                da.Fill(ds, sTable);
 
                dataGridView1.Refresh();
 
                dataGridView1.DataSource = ds;
                dataGridView1.DataMember = sTable;
 
                if (conn.State == System.Data.ConnectionState.Open)
                    conn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());   
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            dataGridView1.Update();
        }
    }
}


Все работает и ъто радует. стоит конечно еще закинуть это сразу в Load и закинуть в отдельный поток с прогресс баром, но это уже плюшки...

Как в DataGridView это правильно insert-ить если у меня связанные таблицы согласно требований нормализации БД?
То есть имена то могут совпадать.
Как сделать обновление данных при их вводе в поля таблицы?
Insert-ить???
Не могу найти толкового мануалу, потому прошу помощи у сообщества.

Сейчас это выглядит вот так
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.02.2016, 13:28
Ответы с готовыми решениями:

Изменение данных в datagridview Mysql
Как реализовать изменение и удаление данных в datagridview? Помогите пожалуйста, может у кого есть код....

Фильтрация выводимых в datagridview данных
Здравствуйте. Есть два datagridview, связанные по полю ID. Во тором gride есть колонка содержащая год. Как сделать так, чтобы во втором...

Изменение выводимых данных в datagridview - расшифровать условные обозначения
Доброе время суток. Имеется DataGridView1 база на access 2010 в таблице есть поле в котором только 2 значения 1 или 0, где 1 включен,...

4
2 / 2 / 1
Регистрация: 22.09.2014
Сообщений: 132
22.02.2016, 16:04  [ТС]
начал построчно разбирать то что навоял, нашел ошибки.
Но предыдущие вопросы не снимаются.

Добавлено через 2 часа 28 минут
Если что, то помощь еще требуется.
Пока что код преобразился до такого
Кликните здесь для просмотра всего текста
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
        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                //задали строку подключения
                string connStr = "server=" + serverName +
                                ";user=" + dbUserName +
                                ";database=" + dbName +
                                ";port=" + dbPort +
                                ";password=" + pass + ";";
 
 
                //создаем запрос на изменение данных в таблице
                string mySqlCommandInsertInTable = "INSERT INTO CompanyDB (NameCompany,ContactName_id,ContactTelephonNumber) VALUES('Пятая',1,'0505050505')";
                MySqlConnection connection = new MySqlConnection(connStr);
                MySqlCommand sqlCom = new MySqlCommand(mySqlCommandInsertInTable, connection);
                connection.Open();
                sqlCom.ExecuteNonQuery();
 
                if (connection.State == ConnectionState.Open) ;
                connection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }


но как мне выбрать ячейку в которой были внесены изменения???
0
0 / 0 / 0
Регистрация: 25.01.2016
Сообщений: 4
23.02.2016, 00:06
Тихо сам с собой веду беседу. Я ничего не понял и простынь смотреть не интересно. Но самое интересное наверное, что я так же пишу свои посты.

Вот к примеру: Как сделать обновление данных при их вводе в поля таблицы?
Что имелось в виду, не то что не понятно, а даже мыслей нет. Может после вставки обновлять запись с сервера?
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
24.02.2016, 06:31
Лучший ответ Сообщение было отмечено Baeron как решение

Решение

Baeron, вам нужно создать для вашего DataAdapter'а соответствующую InsertCommand. После этого код вашей кнопки можно будет изменить примерно так:
C#
1
2
3
4
        private void button2_Click(object sender, EventArgs e)
        {
                da.Update(ds);
        }
0
2 / 2 / 1
Регистрация: 22.09.2014
Сообщений: 132
24.02.2016, 21:29  [ТС]
azazelloav, ахаха... сам с собою это да.. наверное просто помогает сосредоточиться. Редко прибегаю к таком. Но когда я в полном ступоре, то осознание того что ты ВОЗМОЖНО не один себе сушишь мозг помогает.
По поводу моей задачи. Все решил. Осталось причесать и оформить, но заказчик как-то морозится.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.02.2016, 21:29
Помогаю со студенческими работами здесь

Изменение данных в БД MySQL по редактированию ячейки в DataGridView
Добрый вечер всем. У меня такой вопрос. Есть форма, подключаюсь к БД на сайте и вывожу логины и пароли в datagridView. Всё выводиться...

DataGridView вставка данных
Здравствуйте, Как добавить данные в DataGridView не через TextBox, а сразу в нее? БД подключена Access. Данные, которые былы - видны, а...

Вставка данных из Excel в DataGridView
Привет. Не могу понять, как вставить данные из эксель ((( Подскажите плз шаги, дабы настроить этот элемент управления для вставки...

Вставка изображений в pictureBox и datagridview из базы данных
Здравствуйте! Ситуацию такая: в базе данных есть таблица с полем nvarchar и в нем хранятся НАЗВАНИЯ картинок(картинка.jpg). Картинки...

Вставка данных в таблицу mysql php
Добрый день. Раньше вставку в бд осуществлял с помощью устаревшего метода: $query = mysql_query("INSERT INTO users VALUES...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru