Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с dbExpress при переносе приложения [D7, FireBird]


djoni21 ©   (2004-07-22 19:12:00) 

Здравствуйте мастера! Помогите плиз...  Я столкнулся со следующей проблемой: в среде Дельфи приложение работает отлично, при запуске его на другой машине возникает ошибка "dbExpress Error: [0x0005]: Operation Not Supported", а если точнее то она ругается на обычный master - detail. У меня и раньше были проблемы с компанентами dbExpress, до сих пор я с ними справлялся, а здесь попал в полный оврал. Что делать?


djoni21   (2004-07-23 13:01:00) [1]

>Johnmen ©   (23.07.04 12:54) [10]
А где их скачать можно?


Johnmen   (2004-07-23 12:54:00) [2]

>компоненты FIBPlus нормально с FireBird работают?

Так же, как и с IB...


den_777   (2004-07-23 12:47:00) [3]


> компоненты FIBPlus нормально с FireBird работают?


Извини, никогда не работал с FIBPlus. Может кто другой опытом поделится.


djoni21   (2004-07-23 12:33:00) [4]

> den_777   (23.07.04 11:32) [7]
Программа у меня уже написана и переделовать всё под другие компоненты очень накладно. Так что я воспользовался твоим совтом и организовал связку master - detail через запрос с параметрами. На будующее не подскажешь: компоненты FIBPlus нормально с FireBird работают?


den_777   (2004-07-23 11:32:00) [5]

Просто совет: ну не надо использовать master - detail в dbExpress, ни для этого dbExpress предназначен. По моему мнению, ClientDataSet и DataSetProvider и TSimpledataset присутствуют в dbExpress, только для облегчения переноса программ работающих ранее с БД по другой технологии. Если пишешь с нуля программу используя dbExpress, откажись от всего, что противоречит самой идеологии однонаправленного курсора и отсутствия кеширования данных на клиенте. А связку master - detailвсегда можно организовать, написав запрос с параметрами и педварительно подготовив его (PREPARED:=true). На изменение положения курсора в главной выборке, переоткрывать этот запрос. Скорость если и упадет, то ненамного, а вот проблем точно поубавиться. Если тебе все это не подходит, то зачем вообще использовать dbExpress, тем более в связке с FB. Есть же много других (изначально кеширующих) компонентов работающих с IB и FB.


djoni21   (2004-07-23 09:50:00) [6]

Я использую TSQLQuery со связкой  ClientDataSet и DataSetProvider. Сейчас попробую TSimpledataset.


Sandman25   (2004-07-23 09:43:00) [7]

У меня были проблемы с TSimpleDataSet, пришлось заменить на традиционную связку с ClientDataSet и DataSetProvider


den_777   (2004-07-23 09:34:00) [8]

Может я и не прав, но Operation Not Supportedвыдается обычно в компонентах dbExpress при попытке вызвать метод, который не поддерживается однонаправленным курсором, например PRIOR. Скажи какой компонент у тебя используется при организации связи master - detail. По идее TsqlTable и TsqlQuery использовать нельзя, а если используешь TSimpledataset, то проверь версии MIDAS.DLL на своей и на другой машине.


djoni21   (2004-07-23 09:24:00) [9]

с DLL всё в порядке, здесь для работы приложения достаточно 3-х DLL: dbExpint, Midas и gds32. На тойже машине я запускал для проверки другое клиентское приложение, в котором не было связей master - detail. Это приложение прекрасно работает.
Точно такой же глюк бывает когда используешь dbExpressный компонент TStoredProcedure. Не уже ли эту проблему ни как нельзя победить, чтобы не использовать других компонент?


Johnmen   (2004-07-22 21:26:00) [10]

Возможно, какой-то длл'ки не хватает. Или версия не та, что более вероятно...


Desdechado   (2004-07-22 21:25:00) [11]

а на твоей НЕ в среде Дельфи?
может, драйвер разных версий?


Наверх

Титульная страница Поиск, карта сайта Написать письмо