Каждый инструмент использует . Ваш выбор будет зависеть от характера приложения, его требований к безопасности, производительности и гибкости.
В настоящее время многие программисты используют слои доступа к данным ( DAL ) для такого рода вещей. Многие DAL позволяют указывать представления и хранимые процедуры для вызова. Но вы также можете выполнять запросы к таблицам напрямую, без необходимости хранимых процедур или представлений.
Если вы не используете объектную базу данных, вы будете иметь дело с таблицами , а не с объектами. В настоящее время большинство приложений используют системы баз данных на основе таблиц, , потому что они очень распространены , и вы можете использовать DAL для управления несоответствием объектно-реляционного импеданса .
Хранимые процедуры используются, когда требуется высокая производительность, и программные действия должны выполняться в самой базе данных (возможно, добавление значения метки времени или добавление / вычитание дочерних записей). Хороший DAL обеспечит высокую производительность без необходимости использования хранимых процедур.
Представления используются для управления интерфейсом между базой данных и потребителем данных. В частности, данные могут быть отфильтрованы в целях безопасности. В сценариях больших баз данных администратор базы данных проектирует и создает таблицы, а также управляет представлениями и хранимыми процедурами, которые пользователь может использовать для доступа к данным.
Если вы ищете максимальную гибкость, большая часть того, что вам нужно сделать, может быть выполнена в DAL, без необходимости просмотра или хранимых процедур. Но опять же, это зависит от требований вашего приложения. Я бы сказал, что чем больше ваше приложение и пользовательская база, тем больше вероятность, что вы будете использовать представления и хранимые процедуры в своем приложении.