![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Direct Oracle Access
Vlad © (2003-08-08 15:30:00)
Поставил себе DOA 343 под Delphi и наткнулся на следующую проблему: при получении DataSet"a при помощи join"a неск-ких таблиц его невозможно сделать CachedUpdates, т.к. отсутствует rowid. Насколько я помню, в BDE например CachedUpdates можно было ставить любому DataSet"у.
Может кто знает, как обойти эту проблему с rowid и все-таки сделать DataSet CachedUpdates?
Vlad (2003-08-08 18:04:00) [1]
Спасибо всем.
Помогло
Select chartorowid(null), .....
from a, b, c
итд.
Видать ему просто важно чтоб было хоть какое-нибудь поле типа rowid
Reindeer Moss Eater (2003-08-08 17:41:00) [2]
А если не можно?
например, select rowid, count(*) from mytable
Ну да, круто.
Остается придумать зачем такому набору данных CachedUpdates.
petr_v_a (2003-08-08 17:37:00) [3]
А если не можно?
например, select rowid, count(*) from mytable
Reindeer Moss Eater (2003-08-08 16:28:00) [4]
Зачем же селектить фигню и обзывать её ROWID, когда можно выбрать настоящий ROWID?
petr_v_a (2003-08-08 16:18:00) [5]
А это не проблема, люди (AllRoundAutomations) как лучше хотели. Если Вы уверены, что можете однозначно идентифицировать запись без ROWID, поселектите какую-нить фигню, назовите ее "ROWID" и используйте OnApplyRecord.
select "фигня" "ROWID", нужный_столбец1, нужный_столбец2
from
( big complex subquery )
Reindeer Moss Eater (2003-08-08 15:32:00) [6]
внешний select над внутренним и ROWID во внешенм селекте.