All Projects → weavejester → Ragtime

weavejester / Ragtime

Licence: other
Database-independent migration library

Programming Languages

clojure
4091 projects

Projects that are alternatives of or similar to Ragtime

Ebean
Ebean ORM
Stars: ✭ 1,172 (+125.82%)
Mutual labels:  sql, jdbc, database
Norm
Access a database in one line of code.
Stars: ✭ 152 (-70.71%)
Mutual labels:  sql, jdbc, database
Snowflake Jdbc
Snowflake JDBC Driver
Stars: ✭ 83 (-84.01%)
Mutual labels:  sql, jdbc, database
Node Sqlite
SQLite client for Node.js applications with SQL-based migrations API written in Typescript
Stars: ✭ 642 (+23.7%)
Mutual labels:  sql, migrations, database
Jooq
jOOQ is the best way to write SQL in Java
Stars: ✭ 4,695 (+804.62%)
Mutual labels:  sql, jdbc, database
Node Pg Migrate
Node.js database migration management for Postgresql
Stars: ✭ 838 (+61.46%)
Mutual labels:  sql, migrations, database
Goose
A database migration tool. Supports SQL migrations and Go functions.
Stars: ✭ 2,112 (+306.94%)
Mutual labels:  sql, database, migrations
Migrate
Database migrations. CLI and Golang library.
Stars: ✭ 7,712 (+1385.93%)
Mutual labels:  sql, migrations, database
Sqlhelper
SQL Tools ( Dialect, Pagination, DDL dump, UrlParser, SqlStatementParser, WallFilter, BatchExecutor for Test) based Java. it is easy to integration into any ORM frameworks
Stars: ✭ 242 (-53.37%)
Mutual labels:  sql, jdbc, database
Java Persistence Frameworks Comparison
Comparison of non-JPA SQL mapping frameworks for Java (Jooq, Spring JDBCTemplate, MyBatis, EBean, JDBI, Speedment, sql2o)
Stars: ✭ 213 (-58.96%)
Mutual labels:  sql, jdbc, database
Jailer
Database Subsetting and Relational Data Browsing Tool.
Stars: ✭ 576 (+10.98%)
Mutual labels:  sql, jdbc, database
H2database
H2 is an embeddable RDBMS written in Java.
Stars: ✭ 3,078 (+493.06%)
Mutual labels:  sql, jdbc, database
Lol dba
lol_dba is a small package of rake tasks that scan your application models and displays a list of columns that probably should be indexed. Also, it can generate .sql migration scripts.
Stars: ✭ 1,363 (+162.62%)
Mutual labels:  sql, migrations, database
Migrate
Database migrations. CLI and Golang library.
Stars: ✭ 2,315 (+346.05%)
Mutual labels:  sql, migrations, database
Jaydebeapi
JayDeBeApi module allows you to connect from Python code to databases using Java JDBC. It provides a Python DB-API v2.0 to that database.
Stars: ✭ 247 (-52.41%)
Mutual labels:  sql, jdbc, database
Trino
Official repository of Trino, the distributed SQL query engine for big data, formerly known as PrestoSQL (https://trino.io)
Stars: ✭ 4,581 (+782.66%)
Mutual labels:  sql, jdbc, database
Hibernate Orm
Hibernate's core Object/Relational Mapping functionality
Stars: ✭ 4,806 (+826.01%)
Mutual labels:  jdbc, database
Android Orma
An ORM for Android with type-safety and painless smart migrations
Stars: ✭ 442 (-14.84%)
Mutual labels:  sql, database
Zero downtime migrations
Zero downtime migrations with ActiveRecord 3+ and PostgreSQL
Stars: ✭ 513 (-1.16%)
Mutual labels:  migrations, database
Graphql Compiler
Turn complex GraphQL queries into optimized database queries.
Stars: ✭ 447 (-13.87%)
Mutual labels:  sql, database

Ragtime

Build Status

Ragtime is a Clojure library for migrating structured data in a way that's database independent. It defines a common interface for expressing migrations, much like Ring defines a common interface for expressing web applications.

Installation

Add the following dependency to your project file:

[ragtime "0.8.1"]

Overview

Ragtime needs three pieces of data to work:

  1. A migratable data store
  2. An ordered sequence of migrations
  3. A strategy on how to deal with conflicts

A data store is an implementation of the DataStore protocol, and tells Ragtime how to record which migrations are applied to an arbitrary store of data, such as a database.

Since 0.5.0, migrations are implementations of the Migration protocol, which has three methods:

  • id - returns a unique ID for the migration
  • run-up! - applies the migration to a database
  • run-down! - rolls back the migration in a database

Ragtime comes with a way of loading SQL migrations from files, and applying them to a SQL database.

Documentation

License

Copyright © 2021 James Reeves

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].