Вниз
Скачать: CL | DM;

Проблема использования view в TOraTable (ODAC)   Найти похожие ветки 

 
alextov   (2002-06-06 11:29) [0]

Может кто-нибудь сталкивался?
При попытке открыть представление (view) в TOraTable выдается следующая ошибка

ORA-01445 - cannot select ROWID from a join view without a key-preserved table
Которое я перевел так: не могу выбрать ROWID из view без таблицы с ключом ???
View создан из двух таблиц одна из которых с PK.
При этом обычный TTable нормально работает.
Как лечить и что это такое?


 
Black Cat ©   (2002-06-06 11:35) [1]

Во второй таблице определи PK


 
Black Cat ©   (2002-06-06 12:23) [2]

Oops, извиняюсь, не поможет :) Не понял сразу. Видимо представление создается как объединение двух таблиц (select a.*,b.* from ... a, ... b), тогда действительно первичный ключ не сохраняется, ровид выбрать нельзя, следовательно - редактировать низзя. TTable просто показывает результат такого селекта, при попытке редактировать - та же ошибка


 
alextov   (2002-06-06 12:28) [3]

Помогло !!!! Спасибо !!!
Отображает содержимое представления !!!
А по поводу редактировать я редактирую не через Table, а напрямую операторами SQL, так что должно работать.


 
roottim   (2002-06-06 12:38) [4]

вообще TTable дурной тон...
чтобы избегать подобных ситуаций, темболее что редактирование через SQL.. используй TSmartQuery
TTable наследник от него... и отличается незначительно..(простой запрос for update: select t.*, t.rowid) а пластичность у квери само собой больше

по вопросу еще добавлю...
представления рода
select ...,
(select....),
from


с TTable так-же не пройдет!



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
3-864
Ulugbek
2002-06-06 14:18
2002.07.01
Удаление записей из базы данных


1-1034
tovSuhov
2002-06-18 12:59
2002.07.01
TListView - разноцветные строки - как?


3-886
Ptr
2002-06-07 10:59
2002.07.01
InterBase.Locate


3-875
Ulugbek
2002-06-06 16:26
2002.07.01
Мастера опять проблема!


14-1169
MaximatorVeter
2002-05-22 18:34
2002.07.01
Подкиньте работу!




   Наверх