ORM — Types Of ORMs
Published in
3 min readJan 23, 2023
Hi everyone, in this blog we will see about the types of ORMs
Object Relational Mapping (ORM) is a technique used in creating a bridge between object-oriented programs and the relational databases.
Popular ORM tools for Nodejs:
- Prisma — Prisma is the next generation Node.js and TypeScript ORm. It supports intuitive data model, automated migrations, type-safety and auto-completion. It supports PostgreSQL, MySQL, SQLite, SQl Server, MongoDB, CockroachDB.
- Sequelize — Sequelize is a modern Typescript and Node.js ORM for Oracle, PostgreSQL, MySQL, MariaDB, SQLite and SQL server. It supports relations, eager and lazy loading and many more.
- TypeORM — TypeORM can run in Nodejs, ReactNative, NativeScript, Expo and can be used with TypeScript and Javascript. This ORM can be used to develop any kind of application that uss databases — from small application with a few tables to large scale enterprise applications with multiple databases.
- Mongoose — Mongoose is a Node.js based Object Data Modelling (ODM) library for MongoDB.
- Bookshelf.js — Bookshelf.js is a JavaScript ORM for Node.js, built on the Knex SQL query builder. It features both Promise-based and traditional callback interfaces, transaction support, eager/nested-eager relation loading, polymorphi associations and support for one-to-one, one-to-many, and many-to-many relations.
Popular ORM tools for Java:
- Hibernate — Hiberanate enables developers to write data persistent classes following OOP concepts like inheritance, polymorphism, association, composition. Hibernate is highly performant and is also scalable.
- Apache OpenJPA — Apache OpenJPA is also a Java persistance tool. It can be used as a stand-alone POJO(plain old Java object) persistence layer.
- EclipseLink — EclipseLink is an open source Java persistence solution for relational, XML and database web services.
- jOOQ — jOOQ generates Java code from data stored in a database. You can also use this tool to build type safe SQL queries.
- Oracle TopLink — Oracle TopLink tool is used to build high-performace application that store persistent data. The data can be transformed into either relational data or XML elements.
Popular ORM tools for Python:
- Django — Django is a great tool for building web applications rapidly
- web2py — web2py is an open source full-stack Python framework for building fast, scalable, secure and data-driven web applications.
- SQLObject — SQLObject is an object relational manager that provides an object interface to your database.
- SQLAlchemy — SQLAlchemy provides persistence patterns designed for efficient and high-performing database access.
Popular ORM tools for PHP:
- Laravel — Laravel comes with an object relational manager called Eloquent which makes interaction with databases easier.
- CakePHP — CakePHP provides two object types: repositories which give you access to a collection of data and entities which represents individual records of data.
- Qcodo — Qcodo provides different commands that can be run in the terminal to interact with databases.
- RedBeanPHP — RedBeanPHP is a zero config object relational mapper.
Popular ORM tools for .NET:
- Entity Framework — Entity Framework is a multi-database object-database mapper. It supports SQL, SQLite, MySQL, PostgreSQL, and Azure Cosmos DB.
- NHibernate — NHibernate is an open source object relational mapper with tons of plugins and tools to make development easier and faster
- Dapper — Dapper is a micro-ORM. It is mainly used to map queries to objects. This tool doesn’t do most of the things an ORM tool would do like SQL generation, caching results, lazy loading, and so on.
- Base one Foundation Component Libary — BFC is a framework for creating networked database applications with Visual Studio and DBMS software from Microsoft, Oracle, IBM, Sybase, and MySQL.
Hope You find it useful! Thank you!!