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

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

Илья Аганичев Мудрец (13024), закрыт 1 месяц назад
Как узнать, сколько записей удалено запросом 'delete ..' компоненты TQuery?
Лучший ответ
Pasion Celecte Мыслитель (7584) 1 месяц назад
После выполнения запроса 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 Искусственный Интеллект (393880) 1 месяц назад
Хочу только заметить, что не все базы и не все драйверы сообщают клиенту количество удаленных записей. Поэтому, с некоторыми базами вышеописанный код может тупо не работать. В этом случае я бы рекомендовал использовать для удаления хранимую процедуру, которая бы средствами самой базы узнавала количество удаленных записей и возвращала его.
Night Prowler Мудрец (15160) 1 месяц назад
После DELETE напиши SELECT @@RowCount и узнаешь
Похожие вопросы