我刚开始使用Elixir / Phoenix和Ecto迁移。我找不到使用迁移创建Postgres数据库架构的方法。我的数据库在不久的将来将需要多达4种不同的模式。我的意思是这样做,但是要创建模式而不是表。我不确定是否可以做到,但是如果可以,怎么办?谢谢。
def change do
create table(:people) do
...
end
end
答案 0 :(得分:4)
您正在寻找Ecto.Migration.execute/1
函数。您可以使用它来执行任意的SQL命令,例如创建用户,模式或向数据库添加扩展。
defmodule Example.Migrations.MakeSchema do
use Ecto.Migration
execute "CREATE SCHEMA example"
end