Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Delphi 6 консольное приложение TQuery DELETE

Илья Аганичев Мудрец (13234), закрыт 12 месяцев назад
Как узнать, сколько записей удалено запросом 'delete ..' компоненты TQuery?
Лучший ответ
발렌티나 빅토로브나 토포리셰바 Просветленный (38281) 12 месяцев назад
После выполнения запроса DELETE в компоненте TQuery для Delphi 6 можно использовать свойство RowsAffected, которое указывает количество измененных (удаленных) строк в базе данных.

Пример:

with Query1 do
begin
SQL.Text := 'DELETE FROM MyTable WHERE SomeColumn = SomeValue';
ExecSQL;
if RowsAffected > 0 then
Writeln('Удалено записей: ', RowsAffected)
else
Writeln('Записи не были удалены');
end;


Если количество удаленных записей больше 0, будет выведено сообщение с указанием количества удаленных записей. Если же ни одна запись не была удалена, будет выведено сообщение "Записи не были удалены".
Остальные ответы
Jurijus Zaksas Искусственный Интеллект (424690) 12 месяцев назад
Хочу только заметить, что не все базы и не все драйверы сообщают клиенту количество удаленных записей. Поэтому, с некоторыми базами вышеописанный код может тупо не работать. В этом случае я бы рекомендовал использовать для удаления хранимую процедуру, которая бы средствами самой базы узнавала количество удаленных записей и возвращала его.
Night Prowler Мудрец (15201) 12 месяцев назад
После DELETE напиши SELECT @@RowCount и узнаешь
Похожие вопросы