#sql #winforms
#sql #winforms
Вопрос:
У меня есть DataGridView, подключенный к базе данных, и я выполняю команду удаления, как мне заставить ее удалить выбранную строку? Я хочу, чтобы это было что-то вроде:
УДАЛИТЬ ИЗ TableName, где идентификатор «выбран»
Я хочу удалить строку, на которую нажал пользователь
Ответ №1:
Если вы «подключены» к источнику базы данных, удаление его из GridView приведет к удалению его из базовой таблицы. По крайней мере, в ListView это происходит.
Если вам нужно вручную удалить строку, вы можете использовать следующий запрос:
"DELETE FROM table WHERE your_key_column = " dataGridView1.SelectedRows[0].Cells[0]
Предполагается, что вы уверены, что выбрана только одна строка и первая ячейка содержит ваш ключ, который однозначно определяет строку для удаления.
Комментарии:
1. Что ж, это произойдет, если этого не произойдет, то переопределите событие ‘on delete’.
2. Кнопка Обновления выдает ошибку, в которой говорится, что мне нужна действительная команда DeleteCommand, о чем я и спрашиваю. Я хочу, чтобы он удалял только выбранную строку
3. Можете ли вы опубликовать запрос. Может ли быть так, что он не подлежит обновлению, как запрос объединения?
4. Я могу обновить все после внесения изменений в строку, это просто удалить
5. Опять же, удаление ДОЛЖНО СРАБОТАТЬ. Попробуйте опубликовать больше информации о вашей проблеме, потому что то, что я вижу здесь, должно сработать. Моим следующим предположением было бы: есть ли у вас права на УДАЛЕНИЕ, и я предполагаю, что они у вас есть… Кроме того, опубликуйте подробные сведения об исключении, которое вы получаете