Search Results for

    Show / Hide Table of Contents

    Install from Nuget

    The project is split into multiple packages:

    Package Description
    FluentMigrator The base assembly needed to create migrations
    FluentMigrator.Runner The runner classes required for in-process execution of migrations
    FluentMigrator.Console The .NET 4.0/4.5/.NET Core 2.0 executable for out-of-process execution of migrations
    FluentMigrator.MSBuild The .NET 4.0/4.5/.NET Standard 2.0 task for MSBuild
    FluentMigrator.DotNet.Cli The .NET Core 2.1 executable that integrates into the .NET Core CLI tooling (dotnet command)

    Getting Started

    • Check out the tour of FluentMigrator in our Quickstart
    • We also started a FAQ

    Usage details

    • How to create a migration
    • Learn about the fluent interface
    • Profiles can be used to seed test data
    • And then choose one of the migration runners to run your migrations

    More Features

    • Database functions as default value
    • Microsoft SQL Server specific extensions
    • Using raw SQL
    • Auto-reversing migrations
    • Transaction modes for the migration runner
    • In-Memory Testing

    Advanced Features and Techniques of FluentMigrator

    • Dealing with multiple database types
    • Filter migrations run based on Tags
    • Enforcing migration version numbering rules
    • Create custom metadata for the VersionInfo table

    Current Release

    • Release Notes

    Upgrade guides

    • 3.1 to 3.2
    • 3.0 to 3.1
    • 2.x to 3.0

    Runners

    • Console
    • dotnet-fm
    • MSBuild

    Supported databases

    For the current release these are the supported databases:

    Database Identifier Alternative identifier(s)
    Microsoft SQL Server 2022 SqlServer2016(1) SqlServer
    Microsoft SQL Server 2019 SqlServer2016(2) SqlServer
    Microsoft SQL Server 2017 SqlServer2016(3) SqlServer
    Microsoft SQL Server 2016 SqlServer2016 SqlServer
    Microsoft SQL Server 2014 SqlServer2014 SqlServer
    Microsoft SQL Server 2012 SqlServer2012 SqlServer
    Microsoft SQL Server 2008 SqlServer2008 SqlServer
    Microsoft SQL Server 2005 SqlServer2005 SqlServer
    Microsoft SQL Server 2000 SqlServer2000 SqlServer
    Microsoft SQL Server Compact Edition(4) SqlServerCe SqlServer
    PostgreSQL Postgres PostgreSQL
    PostgreSQL 9.2 Postgres92 PostgreSQL92
    PostgreSQL 10.0 PostgreSQL10_0 PostgreSQL
    PostgreSQL 11.0 PostgreSQL11_0 PostgreSQL
    PostgreSQL 15.0 PostgreSQL15_0 PostgreSQL
    MySQL 4 MySql4 MySql
    MySQL 5 MySql5 MySql, MariaDB
    MySQL 8 MySQL8 MySql, MariaDB
    Oracle Oracle
    Oracle (managed ADO.NET) OracleManaged Oracle
    Oracle (DotConnect ADO.NET) OracleDotConnect Oracle
    Microsoft JET Engine (Access) Jet
    SQLite Sqlite
    Firebird Firebird
    Amazon Redshift Redshift
    SAP Hana Hana
    SAP SQL Anywhere(5) SqlAnywhere16 SqlAnywhere
    DB2 DB2
    DB2 iSeries DB2 iSeries, IBM DB2 iSeries DB2
    • (1) All integration tests ran without error against an SQL Server 2019 using the SqlServer2016 dialect.
    • (2) All integration tests ran without error against an SQL Server 2019 using the SqlServer2016 dialect.
    • (3) All integration tests ran without error against an SQL Server 2017 using the SqlServer2016 dialect.
    • (4) Support for Microsoft SQL Server Compact Edition is being dropped due to Microsoft end-of-life support date passing.
    • (5) Support for SAP SQL Anywhere is being dropped due to SAP not supporting a .NET Core / .NET 5 database driver.
    • Edit this page
    In this article
    Back to top
    Copyright © 2018 Fluent Migrator Project
    Generated by DocFX
    Creative Commons License
    FluentMigrator Documentation by FluentMigrator Project is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.