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

Программное удаление записи из БД Acess через Datagridview

14.05.2018, 21:18. Показов 1275. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Реализовал добавление данных в БД, но не могу понять как эти данные из БД удалить. Должно работать так :
Сотрудник выбирает строчку в Datagridview и путем нажатия кнопки "Удалить" эту строку удаляет
код добавление строчки прикрепляю
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
private void добавитьСотрудникаToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AddUser f = new AddUser();
            f.ShowDialog();
            if ((AddUser.UserID != "") && (AddUser.Username != "") && (AddUser.UserSpec != ""))
                try
                {
                    {   //Соединяемся с БД
                        string connStringAcc = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}", @"D:\Visual\Новая папка\KOS2\KOS\KOS\База данных1.accdb");
                        using (OleDbConnection connAcc = new OleDbConnection(connStringAcc))
                        {   //Вставляем строку с Сотрудником
                            connAcc.Open();
                            OleDbCommand command2 = new OleDbCommand
                            ("INSERT INTO Sotrud([ID Number],[SotrudName],[Speciality])"
                            + "SELECT" + "'" + AddUser.UserID + "'AS Выражение1, '" + AddUser.Username + "'AS Выражение2, '" + AddUser.UserSpec + "'AS Выражение3;",
                            connAcc);
                            command2.ExecuteNonQuery();
                        }
                    }
                }
                catch (Exception)
                {
                    f.Close();
                }
 
        }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.05.2018, 21:18
Ответы с готовыми решениями:

Загрузить в БД Acess PDF файлы через dataGridView
Здравствуйте! Есть БД Access, в таблице есть Поле типа OLE (Для хранения PDF файлов (не ссылок, а именно документов целиком)). Какому типу...

Добавление записи в БД Acess через ADOQuery
Здравствуйте! Помогите пожалуйста, хочу добавить данные в базу следующим образом: ADOQuery2->Close(); ...

Программное удаление лишних строк таблицы DataGridView
Имеется программа. При считывании из файла таблица заполняется таким образом (рис.1). При нажатии на кнопку "Рассчитать таблицу"...

8
54 / 48 / 31
Регистрация: 14.04.2015
Сообщений: 273
18.05.2018, 08:25
Функция которая принимает параметр ID таблицы и удаляет данные.

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
        public void deleteDB(string idLabel)
        {
            using (connect = new OleDbConnection(connectString))
            {
                try
                {
                    command = new OleDbCommand("DELETE FROM [Имя_Таблицы] WHERE ID_Поле_Таблицы = " + idLabel, connect);
                    connect.Open();
                    command.ExecuteNonQuery();
                    if (command.ExecuteNonQuery() == 0)
                    {
                        MessageBox.Show("Запись удалена", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    connect.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
 
    }
}
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
18.05.2018, 09:27
Цитата Сообщение от Welcome20 Посмотреть сообщение
C#
1
2
3
4
5
command.ExecuteNonQuery();
if (command.ExecuteNonQuery() == 0)
{
    MessageBox.Show("Запись удалена", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Тут будет дважды выполнен один и тот же запрос.
ExecuteNonQuery() возвращает количество измененных записей, соответственно если вернулось 0, то ничего не было удалено. А поскольку запись была удалена при первом запросе, то во втором вернется 0.
Тогда уж:
C#
1
2
3
4
5
var result = command.ExecuteNonQuery();
if (result  != 0)
{
    MessageBox.Show("Запись удалена", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
1
0 / 0 / 0
Регистрация: 06.07.2016
Сообщений: 23
23.05.2018, 19:49  [ТС]
Возможно это глупый вопрос, но как мне вызывать функцию по нажатию кнопки?
0
Эксперт .NET
 Аватар для Usaga
14100 / 9317 / 1349
Регистрация: 21.01.2016
Сообщений: 34,991
23.05.2018, 20:02
inferno_666, вы правы, это - глупый вопрос)
0
0 / 0 / 0
Регистрация: 06.07.2016
Сообщений: 23
23.05.2018, 20:12  [ТС]
В любом случае я так и не нашел более или менее адекватного ответа в интернете. Поэтому если не сложно, то я бы с радостью получил на него ответ тут
0
54 / 48 / 31
Регистрация: 14.04.2015
Сообщений: 273
24.05.2018, 00:36
Цитата Сообщение от inferno_666 Посмотреть сообщение
Возможно это глупый вопрос, но как мне вызывать функцию по нажатию кнопки?
мда уж, написать название функции в событии кнопки при нажатии.
0
Эксперт .NET
 Аватар для Usaga
14100 / 9317 / 1349
Регистрация: 21.01.2016
Сообщений: 34,991
24.05.2018, 06:50
inferno_666, поищите ещё, но по ключевым словам "WinForms + Button + Click event".
1
54 / 48 / 31
Регистрация: 14.04.2015
Сообщений: 273
24.05.2018, 09:05
inferno_666, а еще дам совет поискать "С чего начать изучение c# windows form" и изучить первые 3 ссылки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.05.2018, 09:05
Помогаю со студенческими работами здесь

Программное удаление записи связанной с внешним ключом в SQLite
Другой вопрос по теме https://www.cyberforum.ru/ado-net/thread2567342.html Ещё вопрос по ВНЕШНЕМУ ключу. Одна из его функций -...

Удаление записи в DataGridView из БД
При нажатии на кнопку "Удалить" выбранная строка не удаляется public partial class DeleteF : Form { public DeleteF() ...

Удаление записи из БД и DataGridView
Здравствуйте уважаемые программисты, просьба такая: не получается удалить запись из базы данных, имеется DataGridView, отображающий данные...

Удаление записи из БД, используя DataGridView
Здравствуйте! Необходимо выполнить удаление записи из таблицы БД при нажатии на кнопку. До этого мы выбираем строку в DataGridView....

Удаление записи из DataGridView и из файла
Помогите с кодом при удалении строки из DataGridView если она 1 пишет что Удаление новой непереданой строки невозможно как это исправить?) ...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru