Текущий архив: 2003.03.03;
Скачать: CL | DM;
ВнизКак в IBDataSet удалить запись? Найти похожие ветки
← →
кило (2003-02-11 18:01) [0]как удалить запись, т.е. как передать параметр в DeleteSQL и потом его запустить?
← →
Johnmen (2003-02-12 00:19) [1]Стандартное применение
DELETE FROM <...> WHERE ID=:ID
где :ID - параметр, значение которого берется из текущей записи IBDataSet"а для поля с именем ID (обычно уникально).
Запускается автоматом при выполнении метода IBDataSet.Delete.
← →
Кило (2003-02-12 09:43) [2]Ну я делаю так:
with dm.IBDataSet do
begin
Locate("NAME_OPERATION",Edit1.Text,[]);
Delete;
end;
Но это же изврат. А как передать ID, что другим способом нельзя как позиционированием курсора?
← →
Жук (2003-02-12 09:53) [3]Если в DeleteSQL прописано удаление текущей записи, то что же вы хотите ? Удаляйте кверёй.
← →
Кило (2003-02-12 09:57) [4]Нет, а что как-то передать ID в DeleteQL нельзя, кроме позиционирования?
Ну там типа:
ParamByName("ID").AsInteger := 5;
← →
ЮЮ (2003-02-12 09:59) [5]>Кило (12.02.03 09:43)
А если такой записи нет, то удалится какая-то другая :-)
← →
Кило (2003-02-12 10:01) [6]5 я написал от фонаря, у меня там выбирается из списка, который актуальный на даное время.
← →
Кило(АУ) (2003-02-12 10:51) [7]Ну что разве никто не столкнулся с такой проблемой?
← →
АлександрИзПерми (2003-02-12 11:08) [8]Если "NAME_OPERATION"не является первичным ключом, вам нехорошо.
При работе с SQL без первичного ключа делать нечего.
← →
Кило (2003-02-12 11:12) [9]2 АлександрИзПерми
Ок, тут я не прав, с таким позиционированием курсора, сделаю по ID, но как нормально передать параметр.
← →
Жук (2003-02-12 11:39) [10]>>кило
>>ParamByName("ID").AsInteger := 5;
← →
Кило (2003-02-12 11:43) [11]2 Жук
Этот же параметр и в DeleteSQL, InsertSQL...
← →
Жук (2003-02-12 13:00) [12]Это вопрос принципиального понимания назначения компонентов доступа. Теоретически в DeleteSQL можно всунуть любой запрос, и он будет выполнятся при DataSet.Delete.
Страницы: 1 вся ветка
Текущий архив: 2003.03.03;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.008 c