mirror of
https://github.com/ash-project/ash_postgres.git
synced 2024-09-20 13:33:50 +12:00
54 lines
1.3 KiB
Elixir
54 lines
1.3 KiB
Elixir
defmodule AshPostgres.TestRepo.Migrations.MigrateResources26 do
|
|
@moduledoc """
|
|
Updates resources based on their most recent snapshots.
|
|
|
|
This file was autogenerated with `mix ash_postgres.generate_migrations`
|
|
"""
|
|
|
|
use Ecto.Migration
|
|
|
|
def up do
|
|
alter table(:posts) do
|
|
add(:uniq_if_contains_foo, :text)
|
|
end
|
|
|
|
drop_if_exists(
|
|
unique_index(:posts, [:"UPPER(uniq_on_upper)"], name: "posts_uniq_on_upper_index")
|
|
)
|
|
|
|
create(
|
|
unique_index(:posts, ["UPPER(uniq_on_upper)"],
|
|
where: "type = 'sponsored'",
|
|
name: "posts_uniq_on_upper_index"
|
|
)
|
|
)
|
|
|
|
create(
|
|
unique_index(:posts, [:uniq_if_contains_foo],
|
|
name: "posts_uniq_if_contains_foo_index",
|
|
where: "((uniq_if_contains_foo LIKE '%foo%')) AND (type = 'sponsored')"
|
|
)
|
|
)
|
|
end
|
|
|
|
def down do
|
|
drop_if_exists(
|
|
unique_index(:posts, [:uniq_if_contains_foo], name: "posts_uniq_if_contains_foo_index")
|
|
)
|
|
|
|
drop_if_exists(
|
|
unique_index(:posts, ["UPPER(uniq_on_upper)"], name: "posts_uniq_on_upper_index")
|
|
)
|
|
|
|
create(
|
|
unique_index(:posts, [:"UPPER(uniq_on_upper)"],
|
|
where: "type = 'sponsored'",
|
|
name: "posts_uniq_on_upper_index"
|
|
)
|
|
)
|
|
|
|
alter table(:posts) do
|
|
remove(:uniq_if_contains_foo)
|
|
end
|
|
end
|
|
end
|