Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

IBDataSet   Найти похожие ветки 

 
cherrex ©   (2004-07-29 20:24) [0]

Помогите с удалентем.
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;
Постоянно выводит ошибку!!!


 
bushmen ©   (2004-07-29 20:36) [1]

А причем тут MSSQL ? Вы сначала с базой определитесь: IB или MSSQL. Да и с кодом изюм какой-то


 
Vlad ©   (2004-07-29 20:44) [2]

Можно я прокомментирую ?

IBDataSet1.Active := True; //Открываем набор данных
IBDataSet1.Delete; // Удаляем первую запись
IBDataSet1.ParamByName("STANDART_MECH").AsString := Edit5.Text; // присваивваем значение параметру
IBDataSet1.FieldByName("SHIP_ID").AsString := Ship_Id; //присваиваем значение полю
Form1.IBTransaction1.CommitRetaining; // Подтверждаем транзакцию
IBDataSet1.Post; //Cохраняем изменения в наборе данных
.

А теперь объясните, что это за чушь ???
Что вам вобще требуется сделать ?


 
cherrex ©   (2004-07-29 20:45) [3]

База у меня точно IB, а запрос создад сам мастер IBDataSet.


 
cherrex ©   (2004-07-29 20:47) [4]

А как тогда выполнить запрос с пораиетрами в DeleteSQL


 
cherrex ©   (2004-07-29 20:50) [5]

Точнее удалить запись в таблице с помощью IBDataSet1.DeleteSQL.


 
bushmen ©   (2004-07-29 20:53) [6]

> 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
Надо книжку почитать про работу с БД.


 
Vlad ©   (2004-07-29 20:55) [7]


> bushmen ©   (29.07.04 20:53) [6]


> В IBDataSet1 находится:
> >delete from MECH
> >where
> >SHIP_ID = :SHIP_ID and
> >STANDART_MECH = :STANDART_MECH

Я так понял что не в IBDataSet, а в его property DeleteSQL (судя по первому посту)


 
cherrex ©   (2004-07-29 20:56) [8]

Значит помощи от вас я не дождусь?


 
bushmen ©   (2004-07-29 21:04) [9]

> cherrex ©   (29.07.04 20:56) [8]

Сначала ответьте на [7]


 
cherrex ©   (2004-07-29 21:11) [10]

Мне нужно в IBDataSet1.DeleteSQL передать значения параметров
(SHIP_ID = :SHIP_ID and STANDART_MECH = :STANDART_MECH), и удалить запись(Ведь для этого предназначен TIBDataSet и DeleteSQL?).


 
Vlad ©   (2004-07-29 21:14) [11]


> cherrex ©   (29.07.04 21:11) [10]


> (Ведь для этого предназначен TIBDataSet и DeleteSQL?).

Нет, не для этого. DeleteSQL предназначен для того чтобы удалять запись из набора данных методом TIBDataSet.Delete
А как именно вы хотите удалить запись - я не понял.


 
cherrex ©   (2004-07-29 21:17) [12]


> Нет, не для этого. DeleteSQL предназначен для того чтобы
> удалять запись из набора данных методом TIBDataSet.Delete

вот это мне и надо


 
Johnmen ©   (2004-07-29 21:21) [13]

Запрос в DeleteSQL предназначен для выполнения его, когда происходит удаление записи из НД TIBDataSet.
Значениия параметров запроса подставляются автоматически из текущей записи НД.


 
Vlad ©   (2004-07-29 21:26) [14]


> cherrex ©   (29.07.04 21:17) [12]
> вот это мне и надо

Тогда нафига туда руками передавать какие-то параметры ?
И потом, какую именно запись требуется удалить ?
Из вашего кода я понял что первую в наборе данных :-) Или нет ?


 
cherrex ©   (2004-07-29 21:27) [15]


> Запрос в DeleteSQL предназначен для выполнения его, когда
> происходит удаление записи из НД TIBDataSet.
> Значениия параметров запроса подставляются автоматически
> из текущей записи НД.

как произвести это удаление


 
Vlad ©   (2004-07-29 21:29) [16]


> cherrex ©   (29.07.04 21:27) [15]


> как произвести это удаление

Я же говорил - методом TIBDataSet.Delete


 
cherrex ©   (2004-07-29 21:31) [17]


> Тогда нафига туда руками передавать какие-то параметры ?
> И потом, какую именно запись требуется удалить ?
> Из вашего кода я понял что первую в наборе данных :-) Или
> нет ?

с значением полей SHIP_ID и STANDART_MECH (пример:delete from MECH where SHIP_ID = "MAVA" and STANDART_MECH = 2).


 
cherrex ©   (2004-07-29 21:33) [18]


> Я же говорил - методом TIBDataSet.Delete

TIBDataSet.Delete удаляет первую запись, а мне надо запись с значениум полей SHIP_ID = "MAVA" and STANDART_MECH = 2


 
Vlad ©   (2004-07-29 21:37) [19]


> cherrex ©   (29.07.04 21:33) [18]


> TIBDataSet.Delete удаляет первую запись

TIBDataSet.Delete удаляет текущую запись
Ну и зачем тогда вобще нужен TIBDataSet ?
Есть компонент TIBSql, специально для этого предназначенный.


 
cherrex ©   (2004-07-29 21:41) [20]


> TIBDataSet.Delete удаляет текущую запись
> Ну и зачем тогда вобще нужен TIBDataSet ?
> Есть компонент TIBSql, специально для этого предназначенный.

как сделать нужную запись текущей


 
Johnmen ©   (2004-07-29 21:44) [21]

Извините. М.б. пора F1 притопить ?
:)


 
Vlad ©   (2004-07-29 21:45) [22]


> cherrex ©   (29.07.04 21:41) [20]


TIBDataSet.Locate
но только зачем такие извраты ?
Еще раз повторяю, чтобы удалить запись из базы с помощью SQL запроса - есть компонент TIBSql


 
cherrex ©   (2004-07-29 22:14) [23]

Vlad все понял. Большое спасибо. Спасибо за терпение ко мне!!!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.053 c
3-1090902152
Jiny
2004-07-27 08:22
2004.08.22
Как перерисовать значение по формуле из табл. в DBgrid ?


14-1091425347
ИдиотЪ
2004-08-02 09:42
2004.08.22
Что делать с "народ.ру" ?


1-1091830266
Костик
2004-08-07 02:11
2004.08.22
Двумерный массив


1-1091712571
Relaxxx
2004-08-05 17:29
2004.08.22
Как узнать какая кнопка мыши нажата, но не в обработчиках OnMouse


1-1091660520
shine
2004-08-05 03:02
2004.08.22
Копирование колекций.Ошибка при assign.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский