Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2013, 15:28   #11
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Будьте любезны описать какие компоненты Вы для этого предпочитаете? Чем выполняете "Delete where" и конкретный код как удаляете строки в Dataset без синхронизации...
DataSet.Delete;
и Query (AdoQuery, например) c текстом запроса 'Delete from ТАблица where id = :rId') + .ExecSQL;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.03.2013, 15:32   #12
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

Цитата:
...который если я правильно понимаю обновляет только одну текущую запись...
при правильном запросе - да
Цитата:
а если из сложной ХП..
без разницы ... главное правильный запрос
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 21.03.2013, 15:56   #13
DeveloPerchik
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 78
По умолчанию

Цитата:
без разницы ... главное правильный запрос
Эээ как же это "без разницы", ведь таблица в БД непосредственно содержит данные, а ХП нет... то есть из таблицы можно просто взять строку с ID=1000, а из ХП нельзя - нужно полностью перезапустить всю ХП и только потом в ней найти строку с ID=1000... так что RefreshSQL для одно строки ускоряет обновление только в случае работы напрямую с таблицей, а в случае сложной склейки таблиц через ХП - никакого ускорения не будет!
DeveloPerchik вне форума Ответить с цитированием
Старый 21.03.2013, 16:17   #14
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

а что мешает для ХП добавить условие AND ID=1000 ?
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 24.03.2013, 13:39   #15
DeveloPerchik
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 78
По умолчанию

Цитата:
а что мешает для ХП добавить условие AND ID=1000 ?
во-первых в том случае о котором речь даже если xID=1000, то всё равно нужно пролистать все 10 связанных таблиц;
во-вторых всё равно ХП придётся перезапускать ХП.


Решил вопрос темы всё же через Dataset.Filter, тк тупо "Dataset.InternalDelete" нет, а все остальные обходные варианты оказались хуже.

Всем спасибо за участие!
DeveloPerchik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос: как сделать, чтобы приложение разработанное в Delphi, которое использует бд sql, без проблем работало на другом компьютере Gleg Общие вопросы Delphi 2 15.12.2012 16:57
Как сделать чтобы Dataset без SQL считал себя не read-only ? delphicoding БД в Delphi 12 23.03.2012 22:22
Как скомпилить exe для запуска без прописи alias mrrcat Помощь студентам 3 28.06.2010 05:25
Удаление строки с помощью SQL запроса (Query1.SQL.ADD('Delete....')) Schutze Помощь студентам 6 29.11.2009 22:15