SELECT * FROM users WHERE email = 'test@test.com';
Объектно-реляционное отображение - это идея возможности писать запросы, подобные приведенному выше, а также гораздо более сложные, используя объектно-ориентированную парадигму предпочитаемого вами языка программирования.
Короче говоря, мы пытаемся взаимодействовать с нашей базой данных, используя наш предпочтительный язык вместо SQL.
Вот где приходит объектно-реляционный картограф. Когда большинство людей говорят «ORM», они ссылаясь на библиотеку, которая реализует эту технику. Например, приведенный выше запрос теперь будет выглядеть примерно так:
var orm = require('generic-orm-libarry');
var user = orm("users").where({ email: 'test@test.com' });
Как видите, мы используем воображаемую библиотеку ORM для выполнения точно такого же запроса, за исключением того, что мы можем записать его в JavaScript (или любой другой язык, который вы используете). Мы можем использовать те же языки, которые знаем и любим, а также абстрагироваться от некоторой сложности взаимодействия с базой данных.
Как и в случае любой техники, при использовании ORM следует учитывать некоторые компромиссы.