Le mappage objet / relationnel (parfois abrégé en mappage O / R ou ORM) est la connexion d'objets riches dans une application à une table dans une base de données relationnelle (SGBDR). Avec ORM, vous pouvez enregistrer et lire les attributs d'objet et les relations dans votre application à partir de la base de données avec seulement quelques codes d'accès au lieu d'écrire directement l'instruction SQL. Guide des rails
En bref, si vous utilisez SQL lorsque vous souhaitez obtenir des informations sur les utilisateurs,
SELECT * FROM users ;
Vous devriez obtenir tous les enregistrements avec, mais si vous utilisez le mappage O / R
user.all
Comme, dans les rails, grâce à ActiveRecord, vous pouvez obtenir tout le contenu des utilisateurs sans écrire de SQL.
Je l'utilise souvent
.find_by(name: 'TARO')
Des méthodes comme
SELECT * FROM users WHERE name = "TARO";
Vous obtiendrez le même résultat que SQL comme celui-ci.
Comme mentionné ci-dessus, il est possible de réduire le travail des opérations de base de données compliquées telles que le traitement qui a écrit SQL à l'origine.
S'il présente l'avantage d'être pratique, il présente également certains inconvénients.
Il existe d'autres inconvénients tels que ne pas pouvoir utiliser les fonctions d'une base de données spécifique, mais il y a aussi des avantages tels que pouvoir rechercher des données de manière intuitive et ne pas avoir à modifier le code source lors du changement de base de données.
Comme j'étudiais moi-même avec presque aucune étude de SQL, il y avait de nombreuses situations où la connaissance de SQL était nécessaire pour procéder au développement avec java et kotlin dans les affaires, et au début, j'étais complètement confus.
Récemment, il est souvent installé en standard dans les frameworks Web, et il est nécessaire de connaître la syntaxe de chaque langage, mais j'aimerais utiliser activement le mappeur O / R tant qu'il peut être pris en charge. Je suis.
https://qiita.com/gomiryo/items/6d448c500749f91242d2 https://railsguides.jp/active_record_basics.html
Recommended Posts