FluentMigrator 8.0.1

FluentMigrator

FluentMigrator is a an open-source .NET library that allows you to manage and version database schema changes using a code-first approach. With FluentMigrator, you can define database migrations as code rather than maintaining SQL scripts or using other tools.

Some key features of FluentMigrator include:

  • Code-based Migrations: You define database migrations as C# or VB.NET classes, making it easier to version control and maintain your schema changes.
  • Fluent Interface: FluentMigrator provides a fluent interface for defining database objects like tables, columns, indexes, and constraints, making the code more readable and expressive.
  • Cross-platform: FluentMigrator supports multiple databases, including SQL Server, PostgreSQL, MySQL, Oracle, and SQLite.
  • Rollback Support: FluentMigrator allows you to roll back migrations, making it easier to undo changes or revert to a previous database state.
  • Extensibility: You can create your own custom migrations, conventions, and processors to extend FluentMigrator's functionality.

Getting Started

For a brief overview on getting started with FluentMigrator, please see the documentation links here:

Installation

You can install FluentMigrator via NuGet:

Install-Package FluentMigrator

Usage

FluentMigrator example migration and usage:

[Migration(202401011200)]
public class CreatePersonTable : Migration
{
    public override void Up()
    {
        Create.Table("People")
            .WithColumn("Id").AsGuid().PrimaryKey()
            .WithColumn("Name").AsString(100).NotNullable()
            .WithColumn("Email").AsString(200).Nullable();
    }

    public override void Down()
    {
        Delete.Table("People");
    }
}

For more detailed documentation and examples, please refer to [link to your comprehensive documentation].

Feedback and Contributing

We welcome your feedback, bug reports, and contributions to FluentMigrator.

  • To report a bug or request a feature, please open an issue on our GitHub repository.

If you'd like to contribute to the project, please follow our contributing guidelines.

License

FluentMigrator is released under the Apache license. See the LICENSE file for more details.

Showing the top 20 packages that depend on FluentMigrator.

Packages Downloads
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
96
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
103
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
113
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
118
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
119
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
122
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
127
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
150
FluentMigrator.Runner.SQLite
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
106
FluentMigrator.Runner.SQLite
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
111
FluentMigrator.Runner.SQLite
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
113
FluentMigrator.Runner.SQLite
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
122
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
95
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
96
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
99
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
113
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
116
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
134
FluentMigrator.Runner.SqlServer
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
137

Latest changes and detailed release notes are available on GitHub Releases: https://github.com/fluentmigrator/fluentmigrator/releases

Version Downloads Last updated
8.0.1 25 01/22/2026
8.0.0 18 01/16/2026
7.2.0 42 12/06/2025
7.1.0 96 04/01/2025
7.0.0 86 04/01/2025
6.2.0 122 10/29/2024
6.1.4 108 10/28/2024
6.1.1 103 10/29/2024
6.1.0 86 10/31/2024
6.0.0 109 10/21/2024
5.2.0 105 07/23/2024
5.1.0 109 07/23/2024
5.0.0 144 07/23/2024
3.3.2 124 02/19/2024
3.3.1 118 07/23/2024
3.3.0 135 07/23/2024
3.2.17 134 07/23/2024
3.2.16 129 07/23/2024
3.2.15 133 07/23/2024
3.2.14 106 07/23/2024
3.2.11 125 07/23/2024
3.2.10 100 07/23/2024
3.2.9 134 07/23/2024
3.2.8 135 07/23/2024
3.2.7 123 07/23/2024
3.2.6 150 07/23/2024
3.2.1 116 07/23/2024
3.2.0 125 07/23/2024
3.1.3 114 07/23/2024
3.1.2 112 07/23/2024
3.1.1 122 07/23/2024
3.1.0 121 07/23/2024
3.0.0 138 07/23/2024
2.0.7 123 07/23/2024
2.0.6 117 07/23/2024
2.0.5 125 07/23/2024
2.0.4 130 07/23/2024
2.0.3 139 07/23/2024
2.0.2 130 07/23/2024
2.0.1 118 07/23/2024
2.0.0 107 07/23/2024
1.6.2 154 07/23/2024
1.6.1 124 07/23/2024
1.6.0 116 07/23/2024
1.5.1 148 07/23/2024
1.5.0 132 07/23/2024
1.4.0 137 07/23/2024
1.3.1 122 07/23/2024
1.3.0 142 07/23/2024
1.2.1 136 07/23/2024
1.2.0 131 07/23/2024
1.1.2.1 130 07/23/2024
1.1.2 137 07/23/2024
1.1.1 128 07/23/2024
1.1.0 139 07/23/2024
1.0.6 123 07/23/2024
1.0.5 131 07/23/2024
1.0.4 129 07/23/2024
1.0.3 131 07/23/2024
1.0.2 129 07/23/2024
1.0.1 131 07/23/2024
0.9.2 129 07/23/2024
0.9.1 126 07/23/2024
0.9.0 156 07/23/2024