Цитата(liliputochka @ 13.9.2006, 19:28 ) | | не нашла синтаксис view |
http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_8004.htm#i2065510
Цитата(liliputochka @ 13.9.2006, 19:28 ) | | И как возможно извлекать данные из представления? |
Данные из view извлекаются обычным select-ом. Параметризовывать view нельзя, но к выборке из view можно применять все операции применимые к таблицам (where, join и т.д.).
Цитата(liliputochka @ 13.9.2006, 19:28 ) | | Еще вопросик: чем отличается материализованное представление от обычного? |
View - это просто сохраненный в БД запрос. По результату работы ничем не отличается, от результата который будет в результате выполнения запроса, на основе которого он составлен. Используется в целях безопасности: можно пользователю дать права только на view, а в самом view ограничить выборку данных с помощью клаузы where. Можно скрывать детали хранения данных в БД, т.е. есть возможность изменить структуру хранимых данных, при том, что для программы таблицы останутся неизменными.
Материализованное представление, на самом деле это таблица, которая получается на основе некого запроса, как и view. Обладает теми же свойствами, что и обычный view, кроме одного. Данные в материализованном представлении обновляются с некоторой задержкой. Поэтому при выборке данных можно не совсем актуальные данные. Зато, данные храняться в локальной таблице, и поэтому: данные всегда доступны, даже если в выборке участвуют таблицы с удаленного сервера. Если данные получаются путем сложных расчетов и агрегирования больших объемов данных, то эти вычисления производятся только один раз, при добавлении данных в материализованное представление, а не при каждом запросе как в случае с view. |