Skip to content

Latest commit

 

History

History
23 lines (15 loc) · 2.5 KB

dialects.md

File metadata and controls

23 lines (15 loc) · 2.5 KB

Поддерживаемые СУБД

Каждая миграция может быть выполнена на любой СУБД, для которой реализован провайдер трансформации — специальный класс, отвечающий за генерацию SQL запросов для конкретной СУБД. Провайдер СУБД нужно указывать при запуске миграций на выполнение.

Как это работает

Класс провайдера СУБД реализует интерфейс ITransformationProvider и инкапсулирует в себе всю работу с конкретной СУБД. При запуске миграций на выполнение мигратор создает экземпляр провайдера и передает его каждой миграции во время ее выполнения. Экземпляр провайдера СУБД доступен в методах миграции через свойство Database. Методы Apply и Revert выполняемой миграции вызывают методы объекта Database, а созданный экземпляр провайдера выполняет нужные операции над базой данных.

Готовые провайдеры

Есть уже готовые провайдеры для MS SQL Server, PostgreSQL, Oracle, MySQL и SQLite.

СУБД Короткое имя провайдера NuGet пакет
MS SQL Server sqlserver ThinkingHome.Migrator.Providers.SqlServer
PostgreSQL postgres ThinkingHome.Migrator.Providers.PostgreSQL
Oracle oracle ThinkingHome.Migrator.Providers.Oracle
MySQL mysql ThinkingHome.Migrator.Providers.MySql
SQLite sqlite ThinkingHome.Migrator.Providers.SQLite

Далее

Прочитайте в разделе Разработка, как писать собственные провайдеры трансформации.