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

Вниз

FireBird - dbExpress: ошибка при вызове RefreshRecord, FetchBlobs   Найти похожие ветки 

 
Прогер   (2004-06-22 14:22) [0]

При вызове этих методов датасет генерирует внутри запрос, где она получает эту запись.
Примерно так:
Если у меня есть таблица с записями картинок (картинки - блобы).
select * from MyTable
То когда я вызываю FetchBlobs (также при RefreshRecord, UpdateRecord), то она генерирует след. запрос:
select id, name, pic from MyTable where id=? and name=?
Тут все понятно, имя таблицы она видимо вытаскивает из тескта запроса и задает параметры.
Но есть у меня процедура, которая по параметру выдает только часть данных из таблицы - MyProc(:prm)
select * from MyProc(:prm)
Когда тут я вызываю те методы, то она почему-то теряет параметр процедуры и получается:
select id, name, pic from MyProc(NULL) where id=? and name=?
Конечно так она ту запись не найдет и выходит ошибка.
Нельзя как-то указать ему (TSQLClientDataSet) что данные берутся из процедуры и она должна брать еще его параметр?


 
Johnmen ©   (2004-06-22 14:32) [1]

>датасет генерирует внутри запрос

Так пропиши сам, руками...:)


 
Соловьев ©   (2004-06-22 14:33) [2]

Пиши ручками CommandText
А вообще лучше использовать нормальные компоненты под ФБ - IBX, FIBPlus


 
Прогер   (2004-06-23 06:26) [3]

я бы ручками сам прописал, но это же стандартный юнит
provider.pas, там процедура
TSQLResolver.GenSelectSQL
ее менять мне кажется нецлесобразно.
просто выборка данных идет из процедуры и проблема из-за этого,
я думал может кто сталкивался.
остальные я думаю тоже используют такую же технологию при повторном обращении к записи.



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
4-1086198608
Lessa
2004-06-02 21:50
2004.07.18
Кнопка ПУСК


3-1088056727
IRINA
2004-06-24 09:58
2004.07.18
SQL


3-1087989291
quQuev
2004-06-23 15:14
2004.07.18
Не получается считать из BLOB поля больше 32Kb


9-1080912554
Andrey128
2004-04-02 17:29
2004.07.18
directx


1-1088931987
ida
2004-07-04 13:06
2004.07.18
заставить работать клавиатурные сокращения в динамич меню