Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi и базы данных

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.81
Vit@L
Сисадмин
71 / 30 / 2
Регистрация: 13.03.2008
Сообщений: 396
#1

Как удалить сразу несколько записей из таблицы? - Delphi БД

16.02.2010, 06:06. Просмотров 2759. Ответов 2
Метки нет (Все метки)

Привет всем.
В общем? суть вопроса такова: Используется БД MS Access, компоненты ADOQuery и DBGridEh. По некоторому запросу из таблицы выбирается несколько записей (их может быть как 2, 5 так и 50, 100). Подскажите можно ли как-то удалить все эти выбранные записи не используя цикл??? Т.е. как-нибудь так: ADOQuery1.DeleteAll; ну либо что-то в этом роде?

Я пробовал использовать ADOQuery1.DeleteRecords(); но здесь выдается ошибка: "Операция не допускается в данном контексте"

Подскажите пожалуйста, как быть?
Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.02.2010, 06:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как удалить сразу несколько записей из таблицы? (Delphi БД):

Как с помощью SQL запроса вставить сразу несколько записей? - Delphi БД
Возможно ли с помощью SQL запроса вставить несколько записей, что то вроде этого: ADOQuery.SQL.Clear; ADOQuery.SQL.Add(''INSERT INTO...

как добавить несколько записей из таблицы в ячейку другой таблицы через запятую на дельфи - Delphi БД
имеется бд кулинарная книга, где при добавлении блюда, продукты добавлялись через запятую, по выбору из другой таблицы(список продуктов)......

В бд создается сразу несколько записей - Delphi БД
Привет всем, хотелось бы задать пару вопросов: 1) Пишу программу под бд IB. Компоненты query,database,datasource,ibtransaction! Данный...

Как к одной записи прикрепить несколько других записей из другой таблицы? - Delphi БД
Как к одной записи из AdoTable1 прикрепить несколько записей из ADOTable2 ? например просматриваю я запись 1 из AdoTable1 и в ADOTable2...

Как удалить две строки в listbox сразу? - Delphi
есть текстовый файл который загружается в listbox <пробел> заполненная строка <пробел> заполненная строка <пробел> и...

Как в ADOQuery добавить две таблицы сразу?! - Delphi БД
Как в ADOQuery добавить две таблицы сразу?!Что надо прописать в свойстве SQL ????? первая таблица SPR_TOV вторая таблица Postuplenie

2
\/
12 / 11 / 2
Регистрация: 11.02.2010
Сообщений: 57
16.02.2010, 08:12 #2
Vit@L, ну если ты выбираешь эти данные, то соотвественно знаешь условия фильтрации.
Поэтому TADOQuery и в нем:
Delphi
1
2
ADOQuery.SQL.Text := 'Delete From <имя таблицы> Where <условия теже что и в запросе на выборку>';
ADOQuery.ExecSQL;
Возможно нужно использовать TADOCommand, правда чем она отличается от TADOQuery.ExecSQL не знаю, потому что никогда не работал с ADO)

ну естественно, можно строку команды формировать нужно не в лоб, а например вот так:
Delphi
1
2
3
4
xSQL := 'Delete From %s Where %s';
xTable := 'MyTable';
xWhere := 'Code_MyTable < ' + IntToStr(MaxDelCode); //MaxDelCode максимальный код для удаления
ADOQuery.SQL.Text := Format(xSQL,[xTable, xWhere]);
0
Vit@L
Сисадмин
71 / 30 / 2
Регистрация: 13.03.2008
Сообщений: 396
16.02.2010, 08:25  [ТС] #3
\/, Спасибо большое! Первый вариант работает и устраивает вполне.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2010, 08:25
Привет! Вот еще темы с ответами:

Как добавить данные сразу в две таблицы по связанному ID - Delphi БД
Имеется таблица 1: И таблица 2: Нужно выловить ID_y или (ID-ID1, по которым связаны эти таблицы) и добавить данные в Улицу из таблицы 2...

Delphi! ClientDataSet ФИЛЬТР!? как выбрать несколько записей по заданному фильтру (+код)? - Delphi БД
procedure TForm1.TextTrayIcon1Click(Sender: TObject); begin clientDataSet1.Filter:='Name ='+QuotedStr('Андрей'); ...

Как добавить в таблицу mdb файла Аксесса несколько записей одним запросом? - Delphi БД
Собственно вопрос в теме. Искал по инету, но ничего путного не нашел. (хотя, может быть плохо искал и что-то пропустил) Пробовал...

SELECT COUNT(*) количество записей всей таблицы в переменную, как(? - Delphi БД
Добрый день! Скажите пожалуйста, как записать в переменную количество одинаковых записей по всей таблице Таблица1 Сорт1 Сорт2 ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.