![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как удалить несколько строк в таблице?
Novicer © (2014-02-14 01:50:00)Доброго времени суток мастера! Подскажите плиз че делаю не так?
Хочу удалить пару строк из таблицы по заданному условию, конструкцию
try-except не описываю, но она есть, код такой:
with IBQuery1 do
begin
Close;
SQL.Text := 'delete from MyTable where MyField = :Name_param1';
ParamByName('Name_param1').AsString := ComboBox1.Text;
if not Transaction.Active then Transaction.StartTransaction;
ExecSQL;
Transaction.Commit;
Transaction.Active := false;
end;
Проверял через IbExpert поле с данными аналогичными в ComboBox1 в таблице MyTable есть,но в результате ничего не удаляет :( Раньше данные из комбобокса напрямую добавлял к запросу и получал при выполнении ошибку о выполнении неподготовленного запроса(на буржуйском). Теперь переделал под параметр, но всеравно не пашет. В другом окошке удаляю все строки из другой таблицы так: delete from MyTable2 (без where) такой же процедурой и все работает. Где засада непойму? :(
Novicer (2014-02-14 11:05:00) [1]Нашел! Там регистр букв влияет на удаление. Исправил, все пашет теперь! :)
clickmaker (2014-02-14 09:56:00) [2]попробуй убрать транзакцию. В принципе, ни к чему она здесь
Novicer (2014-02-14 09:47:00) [3](Данные для комбы беру из MyTable, MyField)
Novicer (2014-02-14 09:45:00) [4]Список ComboBox1 как раз и формируется на OnShow формы с помощью distinct-запроса и в IbExpert смотрел данные в табличке совпадают. Мистика...
clickmaker (2014-02-14 09:34:00) [5]как вариант, в таблице MyTable нету записи с MyField = ComboBox1.Text
Novicer (2014-02-14 09:31:00) [6]И вроде все верно, а всеравно не пашет... Трим что-ли на него натравить? :)