Как создать связанную таблицу из представления Oracle? Я могу создать связанную таблицу из таблицы Oracle кода нижеH2: Как создать связанную таблицу из представления Oracle?
--TEST is a table in Oracle
CREATE LINKED TABLE LINK('', 'jdbc:oracle:thin:@url:1521:se', 'sa', 'sa', '(SELECT * FROM TEST)');
Но когда я изменить таблицу TEST
для просмотра VIEW_TEST
, как показано ниже,
--VIEW_TEST is an view in Oracle
CREATE LINKED TABLE LINK('', 'jdbc:oracle:thin:@url:1521:se', 'sa', 'sa', '(SELECT * FROM VIEW_TEST)');
исключения выбросит: ORA-00942: таблица или представление делает не существует.
Итак, как создать связанную таблицу из представления Oracle?
обновление:
Если изменить вид на материализованные представления, он также работает.
--MV_TEST is a materialized view in Oracle
CREATE LINKED TABLE LINK('', 'jdbc:oracle:thin:@url:1521:se', 'sa', 'sa', '(SELECT * FROM MV_TEST)');
Ошибка довольно прямая. Это означает, что либо представление не существует, либо пользователь 'sa' не имеет права (привилегий) на него. Попробуйте добавить гранты к этому представлению пользователю и сообщите нам –
Собственно, это не проблема. Я считаю, что это тоже нормально, если представление представляет собой материализованное представление. См. Обновление. – Garnett