![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
IBDataSet [D7, MSSQL]
cherrex © (2004-07-29 20:24:00)Помогите с удалентем.
DeleteSQL :delete from MECH
where
SHIP_ID = :SHIP_ID and
STANDART_MECH = :STANDART_MECH
procedure TForm2.BitBtn3Click(Sender: TObject);
begin
IBDataSet1.Active := True;
IBDataSet1.Delete;
IBDataSet1.ParamByName('STANDART_MECH').AsString := Edit5.Text;
IBDataSet1.FieldByName('SHIP_ID').AsString := Ship_Id;
Form1.IBTransaction1.CommitRetaining;
IBDataSet1.Post;
end;
Постоянно выводит ошибку!!!
cherrex (2004-07-29 22:14:00) [1]Vlad все понял. Большое спасибо. Спасибо за терпение ко мне!!!
Vlad (2004-07-29 21:45:00) [2]
> cherrex © (29.07.04 21:41) [20]
TIBDataSet.Locate
но только зачем такие извраты ?
Еще раз повторяю, чтобы удалить запись из базы с помощью SQL запроса - есть компонент TIBSql
Johnmen (2004-07-29 21:44:00) [3]Извините. М.б. пора F1 притопить ?
:)
cherrex (2004-07-29 21:41:00) [4]
> TIBDataSet.Delete удаляет текущую запись
> Ну и зачем тогда вобще нужен TIBDataSet ?
> Есть компонент TIBSql, специально для этого предназначенный.
как сделать нужную запись текущей
Vlad (2004-07-29 21:37:00) [5]
> cherrex © (29.07.04 21:33) [18]
> TIBDataSet.Delete удаляет первую запись
TIBDataSet.Delete удаляет текущуюзапись
Ну и зачем тогда вобще нужен TIBDataSet ?
Есть компонент TIBSql, специально для этого предназначенный.
cherrex (2004-07-29 21:33:00) [6]
> Я же говорил - методом TIBDataSet.Delete
TIBDataSet.Delete удаляет первую запись, а мне надо запись с значениум полей SHIP_ID = 'MAVA' and STANDART_MECH = 2
cherrex (2004-07-29 21:31:00) [7]
> Тогда нафига туда руками передавать какие-то параметры ?
> И потом, какую именно запись требуется удалить ?
> Из вашего кода я понял что первую в наборе данных :-) Или
> нет ?
с значением полей SHIP_ID и STANDART_MECH (пример:delete from MECH where SHIP_ID = 'MAVA' and STANDART_MECH = 2).
Vlad (2004-07-29 21:29:00) [8]
> cherrex © (29.07.04 21:27) [15]
> как произвести это удаление
Я же говорил - методом TIBDataSet.Delete
cherrex (2004-07-29 21:27:00) [9]
> Запрос в DeleteSQL предназначен для выполнения его, когда
> происходит удаление записи из НД TIBDataSet.
> Значениия параметров запроса подставляются автоматически
> из текущей записи НД.
как произвести это удаление
Vlad (2004-07-29 21:26:00) [10]
> cherrex © (29.07.04 21:17) [12]
> вот это мне и надо
Тогда нафига туда руками передавать какие-то параметры ?
И потом, какую именно запись требуется удалить ?
Из вашего кода я понял что первую в наборе данных :-) Или нет ?
Johnmen (2004-07-29 21:21:00) [11]Запрос в DeleteSQL предназначен для выполнения его, когда происходит удаление записи из НД TIBDataSet.
Значениия параметров запроса подставляются автоматически из текущей записи НД.
cherrex (2004-07-29 21:17:00) [12]
> Нет, не для этого. DeleteSQL предназначен для того чтобы
> удалять запись из набора данных методом TIBDataSet.Delete
вот это мне и надо
Vlad (2004-07-29 21:14:00) [13]
> cherrex © (29.07.04 21:11) [10]
> (Ведь для этого предназначен TIBDataSet и DeleteSQL?).
Нет, не для этого. DeleteSQL предназначен для того чтобы удалять запись из набора данных методом TIBDataSet.Delete
А как именно вы хотите удалить запись - я не понял.
cherrex (2004-07-29 21:11:00) [14]Мне нужно в IBDataSet1.DeleteSQL передать значения параметров
(SHIP_ID = :SHIP_ID and STANDART_MECH = :STANDART_MECH), и удалить запись(Ведь для этого предназначен TIBDataSet и DeleteSQL?).
bushmen (2004-07-29 21:04:00) [15]> cherrex © (29.07.04 20:56) [8]
Сначала ответьте на [7]
cherrex (2004-07-29 20:56:00) [16]Значит помощи от вас я не дождусь?
Vlad (2004-07-29 20:55:00) [17]
> bushmen © (29.07.04 20:53) [6]
> В IBDataSet1 находится:
> >delete from MECH
> >where
> >SHIP_ID = :SHIP_ID and
> >STANDART_MECH = :STANDART_MECH
Я так понял что не в IBDataSet, а в его property DeleteSQL (судя по первому посту)
bushmen (2004-07-29 20:53:00) [18]> Vlad © (29.07.04 20:44) [2]
Немного невено.
>IBDataSet1.Active := True; //Открываем набор данных
В IBDataSet1 находится:
>delete from MECH
>where
>SHIP_ID = :SHIP_ID and
>STANDART_MECH = :STANDART_MECH
>А как тогда выполнить запрос с пораиетрами в DeleteSQL
Надо книжку почитать про работу с БД.
cherrex (2004-07-29 20:50:00) [19]Точнее удалить запись в таблице с помощью IBDataSet1.DeleteSQL.
cherrex (2004-07-29 20:47:00) [20]А как тогда выполнить запрос с пораиетрами в DeleteSQL