У меня тоже есть книга SQL и теория отношений. Автор CJ Date.Это лучшая книга о реляционных понятиях, которые нейтральны к СУБД.напр., разработка таблиц и написание SQL, которые ориентированы на реляционные, а не на продуктовые.
Однако я считаю, что книга не слишком практична, когда речь идет об обслуживании производственных систем или в практических ситуациях, когда изменения схемы менее благоприятны.Кроме того, поведение производственных данных и приложений также может влиять на преобразование нормальных форм таблиц, например, таблица могла хорошо начинаться с 3NF, но заканчивалась в 1NF по соображениям производительности.то есть чем меньше объединений и справочных таблиц, тем лучше.
Тем не менее, это связано с ограничением концепции табличной СУБД, поэтому в последнее время большое внимание уделяется базам данных ключей / пар NoSQL.
Возвращаясь к теме встроенного SQL и параметризованного SQL, сравниваете ли вы SQL, написанный в исходных кодах уровня приложения, и SQL, которые находятся на компьютерах базы данных (например, PL / SQL в Oracle)?
В этом случае, я для встроенного SQL, я не могу назвать достаточно причин, чтобы полагать, что бизнес-логика должна находиться на уровне приложения, а не на уровне базы данных.
Я являюсь частью команды, которая поддерживает умеренно огромную систему, и в этой системе есть смесь использования PL / SQL со встроенным SQL, и это становится трудным, если, скажем, Java-разработчик не обязательноразбираюсь в PL / SQL (что имеет место), будь то для оптимизации производительности или для поддержания его.Поэтому, если вы храните всю свою бизнес-логику в одном месте (желательно на уровне приложений, вы получаете здесь балл).
По поводу блокировки базы данных, я думаю, вам не нужно слишком беспокоиться об этом.Обычно, когда продукт базы данных приобретается для использования, вы редко меняете его.Усилие, стоимость и риск обычно слишком велики для такого рассмотрения.Если вы не переходите от парадигмы, то есть от реляционных баз данных к базе данных ключ / значение.
Надеюсь, это поможет.