Logo

dev-resources.site

for different kinds of informations.

Brief Introduction to ORM

Published at
5/29/2021
Categories
database
sql
Author
il3ven
Categories
2 categories in total
database
open
sql
open
Brief Introduction to ORM

ORM (Object-Relational Model) in 50 words

Relational databases like MySQL are not object oriented. An ORM solves this problem. It provides an abstraction layer over relational databases.

In other words, ORM is an library using which you can create objects for your entities. For example, the entities for an ecommerce app can be Users, Orders and Products. These entities will get converted into tables by an ORM. An ORM will generate SQL queries for you and communicate with your database.

ORM

Example

Creating tables with one-to-many relationships in ORM is as easy as creating a class. Here one teacher teaches many courses.

class Teachers {
    id: Primary_Key,
    name: String,
    age: Number,
    courses: Courses[], // one-to-many relationship is as simple as creating an array
}

Inserting entries into the table is as easy as using the new operator.

teacher = new Teacher()

teacher.name = 'Alice'
teacher.age = 32

teacher.save()

Pros of an ORM

  • Modelling data is easier because instead of tables you are working with objects.
  • Time is saved as fewer queries have to written.
  • Cleaner code is produced when using an ORM.
  • Switching databases is easier as it is abstracted.

Cons of an ORM

  • Different ORMs have slightly different syntax and need to be learned.
  • Some queries cannot be performed with an ORM and one needs to use SQL for them.

Popular ORMs

ORM is a library available in many different programming languages.

JavaScript
Python
Java

Featured ones: