Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2013, 15:12   #1
Bella
Пользователь
 
Регистрация: 24.09.2009
Сообщений: 23
По умолчанию Обновление БД Access из DataGridView

Ребята здравствуйте! Помогите пожалуйста!

Есть БД созданная в Access, данные из неё выводятся на форму Windows C# в DataGridView (данные выводятся из разных таблиц).

Данные в DataGridView можно редактировать, но как же изменения сохранить обратно в БД?

Необходимо,чтобы при нажатии на кнопку сохранялись изменения в БД
Поняла, что нужно написать запрос Update, только никак не получается его правильно выполнить...

Вот код формы:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace WindowsFormsApplication2
{
    public partial class Form2 : Form
    {


        static string connectionString = @"provider=Microsoft.Jet.OLEDB.4.0; data source=Data\НИДС.mdb";
        OleDbConnection myOleDbConnection = new OleDbConnection(connectionString);
        public Form2()
        {
            InitializeComponent();

            OleDbCommand myOleDbCommand = myOleDbConnection.CreateCommand();
            myOleDbConnection.Open();
            myOleDbCommand.CommandText = "SELECT [Данные о преподавателях].[ФИО преподавателя], Публикации.[Название публикации], Публикации.[Печатные листы], [Тип публикации].[Название типа], Издание.Дата, Издание.[Название сборника], Издательство.Название, Издательство.Город, [Данные о студентах].ФИО FROM [Тип публикации] INNER JOIN ((Издательство INNER JOIN Издание ON Издательство.[id издательства] = Издание.[id издательства]) INNER JOIN ([Данные о преподавателях] INNER JOIN ([Данные о студентах] INNER JOIN Публикации ON [Данные о студентах].[id студента] = Публикации.[id студента]) ON [Данные о преподавателях].[id преподавателя] = Публикации.[id преподавателя]) ON Издание.[id издания] = Публикации.[id издания]) ON [Тип публикации].[id тип публикации] = Публикации.[id тип публикации] where [Данные о студентах].ФИО='" + Form1.n + "';";

            OleDbDataReader myOleDbDataReader = myOleDbCommand.ExecuteReader();
            while (myOleDbDataReader.Read())
            {
                dataGridView1.Rows.Insert(0, string.Format("{0}", myOleDbDataReader[0]), string.Format("{0}", myOleDbDataReader[1]), string.Format("{0}", myOleDbDataReader[2]), string.Format("{0}", myOleDbDataReader[3]), string.Format("{0}", myOleDbDataReader[4]), string.Format("{0}", myOleDbDataReader[5]), string.Format("{0}", myOleDbDataReader[6]), string.Format("{0}", myOleDbDataReader[7]));
                maskedTextBox1.Text = string.Format("{0}", myOleDbDataReader["ФИО"]);
                maskedTextBox1.Enabled = true;
            }

        }

        private void button1_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void Form2_Load(object sender, EventArgs e)
        {


        }

        private void button2_Click(object sender, EventArgs e)
        {
            OleDbCommand myOleCommand = myOleDbConnection.CreateCommand();
            myOleCommand.CommandText = @"update [Данные о преподавателях] set [ФИО преподавателя]='" + this.dataGridView1 + "', Публикации set[Название публикации]= '" + this.dataGridView1 + "', Публикации set [Печатные листы]= '" + this.dataGridView1 + "', [Тип публикации] set[Название типа]= '" + this.dataGridView1 + "', Издание set Дата= '" + this.dataGridView1 + "', Издание set[Название сборника] = '" + this.dataGridView1 + "' , Издательство set Название = '" + this.dataGridView1 + "', Издательство setГород = '" + this.dataGridView1 + "', [Данные о студентах]set ФИО = '" + this.dataGridView1 + "' where ФИО='" + this.maskedTextBox1.Text + "';";             
            myOleCommand.ExecuteNonQuery();
            myOleDbConnection.Close();
 }
}
 }
Bella вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ADO.net + ACCESS аномалия с DataGridView Necare Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 0 24.05.2012 16:32
обновление данных в dataGridView Atlant1Q WPF, UWP, WinRT, XAML 3 18.05.2012 10:44
datagridview и access lkjuio C# (си шарп) 1 29.04.2011 16:56
Поиск в datagridview(заполненной из бд access) snakes2517 Общие вопросы .NET 1 06.04.2010 16:29
C# обновление в связанных datagridview unit-85 Общие вопросы .NET 0 13.11.2009 15:13