Open Source Object-Relational Mapping (ORM) Software

Browse free open source Object-Relational Mapping (ORM) software and projects for Windows and Linux below. Use the toggles on the left to filter open source Object-Relational Mapping (ORM) software by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Your top-rated shield against malware and online scams | Avast Free Antivirus Icon
    Your top-rated shield against malware and online scams | Avast Free Antivirus

    Browse and email in peace, supported by clever AI

    Our antivirus software scans for security and performance issues and helps you to fix them instantly. It also protects you in real time by analyzing unknown files before they reach your desktop PC or laptop — all for free.
    Free Download
  • 1
    Hibernate

    Hibernate

    An object relational-mapping (ORM) library for Java

    Hibernate is an Object/Relational Mapper tool. It's very popular among Java applications and implements the Java Persistence API. Hibernate ORM enables developers to more easily write applications whose data outlives the application process. As an Object/Relational Mapping (ORM) framework, Hibernate is concerned with data persistence as it applies to relational databases (via JDBC).
    Leader badge
    Downloads: 532 This Week
    Last Update:
    See Project
  • 2
    Mikro Orm

    Mikro Orm

    TypeScript ORM for Node.js based on Data Mapper, Unit of Work

    TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. MikroORM allows handling transactions automatically. When you call em.flush(), all computed changes are wrapped inside a database transaction. Uses source code analysis so you do not have to repeat yourself when defining entities. Simply define correct TypeScript types and you are good to go! Supports MongoDB, MySQL, MariaDB, PostgreSQL and SQLite databases, and more can be supported via custom drivers right now. Keep your schema in sync with SchemaGenerator and Migrator. Supports both up and down migrations. With the Seeder and seeding factories, we can generate fake data of any volume/shape and seed the database with ease. Thanks to the UnitOfWork, all queries it fires are automatically batched. Inserts, updates, deletes - you name it! Powerful event system allows to hook into not only the entity lifecycle. Want to alter how the UnitOfWork works? Try onFlush event!
    Downloads: 9 This Week
    Last Update:
    See Project
  • 3
    XML Editor/Validator/Designer with CAMV

    XML Editor/Validator/Designer with CAMV

    CAM XML Editor for XML+JSON+Hibernate+SQL Open-XDX sponsored by Oracle

    The CAM editor is the leading open source XML Editor/Validation/Schema toolset for rapidly building / deploying XML /JSON /Hibernate /SQL data /Forms applications. Visual WYSIWYG data design, rule entry wizards + drag & drop dictionary components. Will import, analyze / refactor from XML Schema / JSON. Oracle is a proud enterprise sponsor; with NIEM.gov support. Do SQL data import/map+ Open Data API delivery+ Hibernate JPA + UI Forms/Pencil Makes XSD schema (default, flatten, NIEM, & OASIS modes) + JAXB bindings; Mindmap FreeMind or UML models(XMI); XML unit test & live SQL data; HTML docs + spreadsheets (NIEM IEPDs). Canonical component dictionaries from schema sets, SQL, JSON, ERwin XSD, or spreadsheets. The XML CAM templates (OASIS standard) store the exchange structure, content model, code lists, DBMappings, SQL lookups+business rules (XPath). Java CAMV XML/JSON validation engine is a complete exchange test framework [XMLUnit, TEAM(Schematron)]. Java/Eclipse +Saxon/XSL
    Downloads: 34 This Week
    Last Update:
    See Project
  • 4
    Ebean

    Ebean

    Ebean ORM

    Ebean provides multiple levels of query abstraction ORM Queries, mixed with SQL, DTO Queries, SqlQuery and JDBC. Work at the highest level of abstraction and drop down levels as needed. Built in DB migration generation and running. Support for "rebase" migrations as well as repeatable, init and 'normal' migrations. Ebean produces SQL that you would hand craft yourself. Use great SQL, never generate SQL cartesian product, always honor relational limit/offset. For ORM queries Ebean can profile the object graph being used and either automatically tune the query. Docker test containers for all the supported databases. Get 100% test coverage on all the features of the database we use. We can build queries using type safe query beans. IDE auto-complete when writing queries, compile time checking and it's FUN. Optimize queries to only fetch what we need (partial objects). Automatically avoid N+1 via a smart load context.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    The database for AI-powered applications.

    MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
    Start Free
  • 5
    DataNucleus

    DataNucleus

    Java persistence using JDO, JPA or REST

    DataNucleus provides Java data persistence to a range of datastores using JDO/JPA/REST APIs. *** Note that code development is no longer on SourceForge (code on SourceForge is for versions up to 3.3.5 only) ***
    Downloads: 20 This Week
    Last Update:
    See Project
  • 6

    SQLObject

    SQLObject is a Python ORM.

    SQLObject is an object-relational mapper for Python. It supports MySQL, PostgreSQL, SQLite, Firebird, MaxDB/SapDB, MS SQL and Sybase. It supports Python versions back to 2.7.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 7
    PostgreSQL client and ORM for Golang

    PostgreSQL client and ORM for Golang

    Golang ORM with focus on PostgreSQL features and performance

    Basic types, integers, floats, string, bool, time.Time, net.IP, net.IPNet. All struct fields are nullable by default and zero values (empty string, 0, zero time, empty map or slice, nil ptr) are marshalled as SQL NULL. pg:",notnull" is used to add SQL NOT NULL constraint and pg:",use_zero" to allow Go zero values. sql.NullBool, sql.NullString, sql.NullInt64, sql.NullFloat64 and pg.NullTime. Structs, maps and arrays are marshalled as JSON by default. PostgreSQL multidimensional Arrays using array tag and Array wrapper. Hstore using hstore tag and Hstore wrapper. go-pg supports 2 last Go versions and requires support for Go modules. So make sure to initialize a Go module. ORM supports has one, belongs to, has many, and many to many with composite/multi-column primary keys. ForEach that calls a function for each row returned by the query without loading all rows into the memory.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    realm dotnet

    realm dotnet

    Realm is a mobile database: a replacement for SQLite & ORMs

    Realm is a fast, scalable alternative to SQLite with mobile to cloud data sync that makes building real-time, reactive mobile apps easy. Build data-rich apps without draining device resources with Realm's lazy loading and zero-copy architecture. The object-oriented data model lets developers work directly with native objects – no ORMs or DAOs are needed. Real-time mobile to cloud data sync makes it easy to build interactive features that keep data up-to-date across multiple devices, users, and the backend. Accelerate time-to-market with easy to learn, language-native APIs that simplify data access. Device Sync, backed by MongoDB Atlas, handles the most complex part of connecting your client to the backend with ease – guaranteeing an app that works as expected and syncs data reliably, every time. Build full mobile apps with ease.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    Database mapping layer for MongoDB on Python. Includes schema enforcement and some facilities for schema migration.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Powering the best of the internet | Fastly Icon
    Powering the best of the internet | Fastly

    Fastly's edge cloud platform delivers faster, safer, and more scalable sites and apps to customers.

    Ensure your websites, applications and services can effortlessly handle the demands of your users with Fastly. Fastly’s portfolio is designed to be highly performant, personalized and secure while seamlessly scaling to support your growth.
    Try for free
  • 10
    LiteSQL is a codegenerator and C++ library that integrates C++ objects tightly to relational database and thus provides an object persistence layer. LiteSQL supports SQLite3, PostgreSQL, MySQL and oracle as backends.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11

    jEasyORM

    Simple Java ORM

    Simple small extensible object relational mapper with database independent key generation and paging
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    DBvolution

    DBvolution

    Java library to remove Object/Relation Impedance

    Now stored at https://github.com/gregorydgraham/DBvolution Available from Maven Central: nz.co.gregs.dbvolution Makes relational data easy and fast to use with semantic annotations and encapsulated datatypes. Simple declaration of a DB table: @DBTableName("mytable") public class MyTable extends DBRow { @DBColumn("numeric_code") @DBForeignKey(Code.class) private DBNumber numericCode = new DBNumber(); @DBColumn("uid_mytable") @DBPrimaryKey @DBAutoIncrement private DBNumber uidMyTable = new DBNumber(); } Easy Gets: List<MyTable> myRows = myDB.get(new MyTable()); MyTable row = myDB.getDBTable(new MyTable()).getByPrimaryKey(61176904); Natural and Outer Joins and Criteria: CarCo carCo = new CarCo(); carCo.name.isLiterally("GM"); List<DBQueryRow> results = myDB.get(carCo, new Marque()); dbQuery.addOptional(new CarModel()); Easy debugging: query.getSQLForQuery(); Simple processing: db.print(query.getAllRows()); List<Marque> marques = query.getAll
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    QueryObjectFactory (QOF) is a lightweight runtime JDBC byte-code generator providing support for CRUD (create, retrieve, update and delete) operations and stored procedure calls. It uses Java annotations to define mappings and is fully OSGi ready.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    pdoMap : the PHP ORM relational mapper
    pdoMap is a robust PHP ORM mapper with many OOP features. The mapping structure, requests, and transactions are defined in XML files. The core directly generates PHP classes for high performance. It is very easy to use and configure.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    C++ Object Relational Mapper API
    This is my attempt at creating an API similar to pythons Elixir for interfacing with SQL databases in C++
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    Conserve
    Conserve is no longer hosted at SourceForge, we have moved to GitHub: https://github.com/ConserveORM/main
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Criteria2JPQL API is an adaptation of the powerful Hibernate Criteria API to standard JPA API enabling the compatibility with any orm tool. Against the native SQL queries created by Hibernate Criteria, Criteria2JPQL outputs standard JPQL queries.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18

    FSP - Simple Persistence Framework

    Simple persistent framework

    FSP is a simple persistence framework for relational database access from java classes.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Flexoodb stands for Flexible Object Oriented Database API. Using your choice of RDBMS, Flexoodb represents objects as XML, allows proprietary Serializable objects to be embedded within the XML representation and manipulation using extended classes.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    GoRose ORM

    GoRose ORM

    Mini database ORM for golang

    GoRose (go orm), a mini database ORM for golang, which was inspired by the famous PHP framework laravel's eloquent. It will be friendly for PHP developers and python or ruby developers. Currently provides six major database drivers: MySQL, sqlite3, Postgres, Oracle, MySQL. GoRose 2.0 adopts a modular architecture, communicates through the API of the interface, and strictly depends on the lower layer. Each module can be disassembled or even customized to your liking. GoRose provides data object binding (map, struct), and supports string table name and map data return. Provides great flexibility. It is recommended to use data binding to complete the query operation so that the data source type can be controlled.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Objectwiz

    Objectwiz

    Administration tool for JEE applications

    Objectwiz is a an administration tools for JEE 6 applications. Once Objectwiz is installed (one jar and two xhtml files) in the application, administrator can perform the following operations: - display all objects of a particular entity bean, - create/edit entity beans objects, - call methods from the session beans, - launch EJBQL query
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Orator

    Orator

    The Orator ORM provides a simple yet beautiful ActiveRecord implement.

    The Orator ORM provides a simple yet beautiful ActiveRecord implementation. The Orator ORM is based on conventions to avoid the hassle of defining every single aspect of your models. It is inspired by the database part of the Laravel framework, but largely modified to be more pythonic. All you need to get you started is the configuration describing your database connections and passing it to a DatabaseManager instance. If you have multiple databases configured you can specify which one is the default. For MySQL and PostgreSQL, the connectors are configured to return unicode strings. If you want to use the previous behavior just set the use_unicode configuration option to False. Once you have configured your database connection, you can run queries. To run a set of operations within a database transaction, you can use the transaction method which is a context manager.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Pif SqlObjects

    Pif SqlObjects

    SqlObjects - SQL library for Java

    Pif SqlObjects is a small and light library that helps to interact with database without writing down any SQL code and provides a small management of entities. This has been achieved considering SQL statements and relative clauses as objects. Note: sources available on sample project lib folder. HOW TO: Download the project and save it in a temporary directory. After this, unzip the file and open in your browser this file: pif-sqlobjects-1.0_reference_manual.htm. Further information and how to are contained in it.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Prisma 1

    Prisma 1

    Database Tools incl. ORM, migrations and admin UI

    Prisma is the perfect tool for building GraphQL servers. The Prisma client is compatible with the Apollo ecosystem, has default support for GraphQL subscriptions and Relay-style pagination, provides end-to-end type safety and comes with a built-in dataloader to solve the N+1 problem. Prisma replaces traditional ORMs and simplifies database workflows. Access, Type-safe database access with the auto-generated Prisma client (in JavaScript, TypeScript, Go). Migrate, declarative data modeling and migrations (optional). Manage, visual data management with Prisma Admin. It is used to build GraphQL, REST, gRPC APIs and a lot more. Prisma currently supports MySQL, PostgreSQL, MongoDB. Prisma is a great fit for building REST& gRPC APIs where it can be used in place of traditional ORMs. It provides many benefits such as type safety, a modern API and flexible ways for reading and writing relational data.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    QtPersistence is a project to create an ORM library for Qt Users. It’s loosely based on ideas from both the Active Record and Data Mapper Ruby ORM projects.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.