Skip to content
This repository was archived by the owner on Jan 15, 2026. It is now read-only.
This repository was archived by the owner on Jan 15, 2026. It is now read-only.

Article: How to add support for a new database #2

Open

Description

@fubar-coder

From the Gitter chat:

New database support usually involves the following steps:

  • Create a new project (e.g. FluentMigrator.Runner.Snowflake) and copy all code from the database that is compatible with Snowflake.
  • Add unit tests for the generated syntax (found under Unit/Generators in the test project)
  • Add integration unit tests (found under Integration/Processors in the test project)
  • Add an example connection string to appsettings.json for the test project
  • Maybe a small comment what's the easiest to test this database during FluentMigrator development

Some databases contain features that aren't covered by FluentMigrator by default. The code to use these features (from your migration) needs to be put into a separate FluentMigrator.Extensions.Snowflake assembly. The extensions are the consumed/processed by the Snowflake processor. We already have extension assemblies for Oracle, SQL Anywhere and the SQL Server.

Activity

  1. jzabroski commented on Aug 11, 2022

    @jzabroski
    Contributor

    @fubar-coder I'm very close to closing out all active issues in this repository, but this one is a pretty big lift.

    Would you have any interest in writing an article for this, and perhaps merging the Snowflake existing logic into the master branch of fluentmigrator/fluentmigrator? If not, no big deal... just thought I would ask.

  2. fubar-coder commented on Aug 12, 2022

    @fubar-coder
    MemberAuthor

    @jzabroski Sorry, I don't have time to do it now and I already forgot quite a bit about the FM source and it'd be a lot of work to get into it again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions