Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: CL | DM;

Вниз

Удаление строк из таблицы   Найти похожие ветки 

 
Дмитрий К.   (2003-09-23 15:03) [0]

Всем доброго времени суток !
Вот такой вопрос:
Есть IB датабаза. Через SQL запрос объединяю две таблицы и вывожу данные в DBGridEh.
Отмечаю selectom нужные строки и выполняю DBgridEh1.SelectedRows.Delete, но начинается ругань-
"Can not delete from dataset(No delete query)". Где это Query нужно прописать?

Буду признателен за ответ.


 
Val ©   (2003-09-23 15:06) [1]

это не в Query надо прописать, а в книжке почитать...про нередактируемые НД.


 
Дмитрий К.   (2003-09-23 15:08) [2]

А конкретнее ?


 
SergK   (2003-09-23 15:10) [3]

Ну, правильно, как же она тебе delete query сделает, если выборка делается из двух таблиц?


 
stud ©   (2003-09-23 15:10) [4]

компонент Updatesql


 
DenK_vrtz ©   (2003-09-23 15:17) [5]

Никогда не работал с DBGridEh, но если в запросе объединены данные из двух таблиц необходимо описать обработчик для удаления


 
kaif ©   (2003-09-23 15:18) [6]

Используй IBDataSet, а не IBQuery. Там все запросы можно прописать. Удалять запись, ясное дело, придется из какой-то одной таблицы. Что не исключает, правда, какое-угодно сложное объединение в SelectSQL. Там еще RefreshSQL имеется. Он для текущей строки.


 
Дмитрий К.   (2003-09-23 15:34) [7]

Так мне надо удалить не саму запись из базы, а только строку из DBGridEh. Таблицы базы из которых берутся данные трогать не нужно.


 
kaif ©   (2003-09-23 15:56) [8]

Тогда нужно включить режим CachedUpdates = True, прописать любую хрень, похожую на SQL-запрос, в свойство DeleteSQL и вперед.
Свойство DeleteSQL есть у TIBDataSet. Можно подключить компонент IBUpdateSQL к IBQuery (свойство IBQuery.UpdatObject) и уже в
IBUpdateSQL.DeleteSQL написать какой-нибудь запрос, например,
select * from rdb$database. Он все равно не сработает, пока не вызовешь AppplyUpdates. А вот этого вызывать не надо.


 
Johnmen ©   (2003-09-23 16:04) [9]

А в DBGridEh нет строк. Как это не печально...:)


 
NickBat ©   (2003-09-23 16:10) [10]

>Так мне надо удалить не саму запись из базы, а только строку
>из DBGridEh. Таблицы базы из которых берутся данные трогать
>не нужно.

Может в консерватории что-то подправить? В смысле хелп почитать?
Это еще хорошо, что тебе ошибку выдало, а если бы все прошло успешно и удалились записи из БД, а ты "только строку из таблицы" хотел удалить?


 
MsGuns ©   (2003-09-23 17:57) [11]

TClientDataSet


 
Vlad ©   (2003-09-23 18:00) [12]

>MsGuns © (23.09.03 17:57) [11]
Думаю, излишне. Вариант с CachedUpdates вполне нормальный.



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

Текущий архив: 2003.10.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.019 c
9-40227
Sword-Fish
2003-04-09 22:37
2003.10.13
Приколы с DirectX !!!


3-40256
DelphiNew
2003-09-23 11:08
2003.10.13
Index is read only


6-40561
Vredina
2003-08-01 15:20
2003.10.13
UDP Message


4-40751
k@rt
2003-08-10 16:44
2003.10.13
Как загрузить текст из файла в Edit?


14-40615
Alex Konshin
2003-09-25 06:09
2003.10.13
Чем грабить AudioCD?