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

Вниз

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

 
Дмитрий К.   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
7-40687
mox
2003-07-29 15:38
2003.10.13
Как можно запустить программу до старта Windows?


1-40341
td
2003-10-01 23:34
2003.10.13
VCLZip % VCLUnZip


3-40234
Sirus
2003-09-24 07:43
2003.10.13
Как можно указать в Firebird тип INT64


6-40567
rus
2003-08-16 17:56
2003.10.13
WebBrowser Как отловить все обращения WebBrowser?


1-40420
Agent[007]
2003-09-30 17:20
2003.10.13
xxx in xxx.pas ;





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский