Ecto.Migration
Ecto.Migration
Migrations are used to modify your database schema over time.
This module provides many helpers for migrating the database, allowing developers to use Elixir to alter their storage in a way that is database independent.
Here is an example:
defmodule MyRepo.Migrations.AddWeatherTable do
use Ecto.Migration
def up do
create table(:weather) do
add :city, :string, size: 40
add :temp_lo, :integer
add :temp_hi, :integer
add :prcp, :float
timestamps()
end
end
def down do
drop table(:weather)
end
end
Note migrations have an up/0
and down/0
instructions, where up/0
is used to update your database and down/0
rolls back the prompted changes.
Ecto provides some mix tasks to help developers work