-
обикновено DML ограниченията се отнасят само до оператори за модификация (UPDATE, DELETE ...), така че SELECT трябва да е ОК. Ще се опитам да намеря конкретно изявление от Oracle.
-
Изгледите биха били вашият първи инструмент за модулиране на често използвани заявки.
-
Функциите имат недостатък спрямо изгледите:ако се извикат от друг SELECT, те не се изпълняват в същия момент от време като основния SELECT. Всяко извикване на SELECT е последователно, но тъй като SELECT са във функционалния код, а не в основния SQL, може да върнете непоследователни резултати. Това не е възможно с изгледи и подизбор:ако голям израз извиква изглед, изгледът се изгражда в същия момент от време като основната заявка.
Актуализация :относно вашия коментар относно параметризираните заявки
Можете да създавате параметризирани изгледи, тоест изгледи, които зависят от променливи, зададени преди изпълнението. Ето пример за AskTom
показвайки как можете да го направите с userenv('client_info')
или dbms_session.set_context
.