Execute Raw SQL In An Ecto Migration
If you are performing a database migration with Ecto, perhaps the most straightforward approach is to use Ecto's DSL. However, the DSL may not always be the best choice. Being able to write raw SQL gives you more control. It will also enable you to use database features that may not be directly or easily available through the DSL.
Raw SQL can be included in a Ecto migration with a combination of Elixir's heredoc syntax and the Ecto.Migration#execute/1
function. You'll also need to provide both an up
and down
function to ensure that your migrations are reversible.
Last updated