Project: yoyo-migrations

Database migrations with SQL

Project Details

Latest version
8.2.0
Home Page
https://ollycope.com/software/yoyo/latest/
PyPI Page
https://pypi.org/project/yoyo-migrations/

Project Popularity

PageRank
0.00353486135531964
Number of downloads
173343

Yoyo database migrations

Yoyo-migrations is a database schema migration tool. Database migrations can be written as SQL files or Python scripts.

What does yoyo-migrations do?

As your database application evolves, changes to the database schema may be required. Yoyo lets you write migration scripts in raw SQL or Python containing SQL statements to migrate your database schema to a new version.

A simple migration script looks like this:

.. code::python

# file: migrations/0001.create-foo.py
from yoyo import step
step(
    "CREATE TABLE foo (id INT, bar VARCHAR(20), PRIMARY KEY (id))",
    "DROP TABLE foo",
)

Yoyo manages these database migration scripts, gives you command line tools to apply and rollback migrations, and manages dependencies between migrations.

Database support

PostgreSQL, MySQL and SQLite databases are supported. ODBC and Oracle database backends are available (but unsupported).

Documentation and code

Yoyo migrations documentation <https://ollycope.com/software/yoyo/>_ | Repository and issue tracker <https://sr.ht/~olly/yoyo/>_