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

Написание SQL запроса на удаление записи

24.04.2010, 15:23. Показов 13881. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пжл написать SQL запрос для удаления из базы записи, выделенной в датагриде.

Использую данный класс для работы с БД.

При моем запросе - вылезает ошибка:


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// удаление рейса - записи
        private void button2_Click_1(object sender, EventArgs e)
        {
            cl.Connect();
            DataGridViewRow dstr = dataGridView1.CurrentRow;
            dataGridView1.DataSource = cl.Query("DELETE FROM raspisanie WHERE '" + dataGridView1.CurrentRow + "'");
 
            OleDbCommand cm = null;
            OleDbDataAdapter da = new OleDbDataAdapter();
            da.InsertCommand = cm;
 
            DataTable _table = new DataTable();
            da.Update(_table);
            dataGridView1.DataSource = cl.Query("SELECT * FROM raspisanie");
            cl.Disconnect();
 
        }
Вложения
Тип файла: rar SQL01.rar (329.5 Кб, 77 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.04.2010, 15:23
Ответы с готовыми решениями:

Удаление записи из БД, с применением SQL-запроса и сохранение последовательности индексов.
Доброго времени суток. Возникла проблема, если кто сталкивался с решением подобной задачи, или кто знает, как это реализовать - помогите...

Написание SQL запроса
Задача 1. Написать запрос SQL, создающий таблицу «Мобильные телефоны» (MobPhones), содержащую следующие поля: – Номер модели (ModelID)...

Написание запроса SQL
Всем доброго времени суток. Прошу помочь в написании запроса. Нужно, чтобы в зависимости от id_arendator выводилась инфа об арендаторе,...

26
9 / 9 / 2
Регистрация: 01.05.2009
Сообщений: 127
25.04.2010, 22:53
Студворк — интернет-сервис помощи студентам
C#
1
 dataGridView1.DataSource = cl.Query("DELETE FROM raspisanie WHERE ID_raspisanie = 1");
а разве есть такое поле в базе как ID_raspisanie???
0
1 / 1 / 6
Регистрация: 26.04.2009
Сообщений: 234
25.04.2010, 23:25  [ТС]
nio, посоветуйте, пжл, хорошую литературу, источники по этой теме
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
25.04.2010, 23:39
Сеппа Д. "ADO.Net"
1
1 / 1 / 6
Регистрация: 26.04.2009
Сообщений: 234
27.04.2010, 21:54  [ТС]
Cправился с удалением) Всем спасибо) Теперь возник еще один вопрос по запросу...

Необходимо установить в ячейке, имеющей значение Бронь, столбца Отметка (в выделенной строке) - значение Продано.
SQL
1
  da.DeleteCommand = NEW OleDbCommand("UPDATE buy SET отметкаDataGridViewTextBoxColumn = Продано WHERE (" + dataGridView1.CurrentRow.Cells["отметкаDataGridViewTextBoxColumn"].Value.ToString() + "=Бронь)");
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
27.04.2010, 23:30
Категорически не правильно
1. УЖАС
Цитата Сообщение от steve09 Посмотреть сообщение
da.DeleteCommand = new OleDbCommand("UPDATE...
коли уж это DeleteCommand, то и запрос долже н быть соответсвенно на удаление. Для обновления используется UpdateCommand.
2. Запрос на обновление тож не правильный
Должно быть приблизительно так
SQL
1
2
3
UPDATE    Material
SET              Name = @Name
WHERE     (ID_Material = @ID_Material)
У Вас возможно так
SQL
1
UPDATE buy SET отметка='продано' WHERE отметка LIKE 'бронь'
Не впутывайте где попало в запрос названия столбцов из dataGridView
1
1 / 1 / 6
Регистрация: 26.04.2009
Сообщений: 234
28.04.2010, 20:33  [ТС]
Цитата Сообщение от nio Посмотреть сообщение
У Вас возможно так
UPDATE buy SET отметка='продано' WHERE отметка LIKE 'бронь'
данный код ставит во всех записях столбца Отметка, содержащих слово бронь значение Продано

а мне надо только в выделенной записи
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
29.04.2010, 15:29
Нет такого понятия "выделено" в БД. Сервер не может знать, что у Вас выделено на форме.
По каким-то критериям необходимо вычислить, какие строки выделены и указать в качестве параметра запроса. Обычно В качесте такого параметра используется ключевое поле. ТОгда запрос выглядит приблизительно так
SQL
1
UPDATE buy SET отметка='продано' WHERE отметка LIKE 'бронь' AND ID=@ID
@ID - это параметр, который передается в запрос для изменения нужной записи
Но в таком случае отпадает необходимость указания, каким было значение поля до изменения,
просто пишете
SQL
1
UPDATE buy SET отметка='продано' WHERE ID=@ID
Хорошо обдумайте, что именно следует обновить и скакими условиями.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.04.2010, 15:29

Написание sql-запроса
Добрый день. Как правильно писать в запросе имя столбца если он написан так "Дата рождения" писать так: @() либо иначе, Ваши...

SQL.Add написание запроса
Добрый день уважаемые, подскажите пожалуйста... Имеется такой запрос: SQL.Add('SELECT * FROM Mebel4er ORDER BY '); Как его можно...

Написание сложного запроса SQL
Задача такая: Оператор телефонной связи берет абонентскую плату 300р. и абонент может разговаривать 300 минут , но если абонент говорил...

Правильное написание SQL запроса
Доброго времени суток, ребята подскажите как правильно добавить столбцы для выбора из БД в запросе. Что то не могу сообразить как это...

написание запроса на выведение номеров в sql
Нужен совет профессионалов. Пытаюсь помочь своей знакомой) Сам я sql знаю, но не я профи, а изучать мне интересно. Даны 2 таблицы: с...


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru