grate.mariadb 1.8.0

dotnet add package grate.mariadb --version 1.8.0                
NuGet\Install-Package grate.mariadb -Version 1.8.0                
命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用了 NuGet 模块的 Install-Package 版本。
<PackageReference Include="grate.mariadb" Version="1.8.0" />                
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件以引用代码包。
paket add grate.mariadb --version 1.8.0                
#r "nuget: grate.mariadb, 1.8.0"                
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码以引用代码包。
// Install grate.mariadb as a Cake Addin
#addin nuget:?package=grate.mariadb&version=1.8.0

// Install grate.mariadb as a Cake Tool
#tool nuget:?package=grate.mariadb&version=1.8.0                

grate

grate 是一个 SQL 脚本迁移运行器,使用纯 SQL 进行迁移。没有元语言,没有代码,没有配置,没有 EF 迁移。它为您提供了完全的灵活性,并完全控制您的迁移,并让您使用特定数据库系统中的所有高级功能。您不受所有支持数据库的共同最低功能集的限制。

grate.mariadb

这是 grate 的 MariaDB/MySQL 提供程序。它用于将 SQL 脚本程序性地部署到 MariaDB 或 MySQL 数据库。有关命令行使用方法,请参阅 grate (dotnet tool) 代码包。

最小代码示例

传递给 grate 的唯一必需参数是 连接字符串 指示其您的数据库位置。它将部署到该数据库,并在当前目录中查找 sql 脚本。

[Fact]
public async Task Run_migration_agains_target_db()
{
    var serviceCollection = new ServiceCollection();
    serviceCollection.AddLogging();
    serviceCollection.AddGrate(builder =>
    {
        builder
            .WithSqlFilesDirectory("/db")
            .WithConnectionString("mariadb/mysql connection string here")
    })
    .UseMariaDb(); // Important!, you need to specify the database type to use.
    var serviceProvider = serviceCollection.BuildServiceProvider();
    var grateMigrator = serviceProvider.GetRequiredService<IGrateMigrator>();
    await grateMigrator.Migrate();
}

有关更多配置选项,请参阅 文档

grate 支持以下数据库

数据库 NuGet 代码包
Microsoft SQL 服务器 (sqlserver) NuGet
PostgreSQL (postgresql) NuGet
MariaDB/MySQL (mariadb) NuGet
Sqlite (sqlite) NuGet
Oracle (oracle) NuGet

grate.core

NuGet

这是一个核心代码包,它本身不执行任何操作。它主要适用于编写 grate 的扩展,或编写自己的数据库提供程序。请随时创建自己的数据库提供程序,并在需要支持尚未受支持的数据库时提交 pull request。

完整文档可以在https://erikbra.github.io/grate/找到。

产品 兼容以及额外的计算目标框架版本。
.NET net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 兼容。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 兼容。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。
兼容目标框架
包括目标框架(在包中)
更多信息请访问目标框架.NET Standard

NuGet 包

此包不被任何 NuGet 包使用。

GitHub 仓库

此包不被任何流行的 GitHub 仓库使用。

版本 下载 最后更新
1.8.0 48 7/25/2024
1.7.4 350 5/16/2024
1.7.3 67 5/11/2024
1.7.2 78 5/8/2024
1.7.1 90 5/7/2024
1.7.0 86 4/29/2024
1.6.3 66 5/11/2024
1.6.2 116 3/13/2024
1.6.1 91 2/16/2024
1.6.0 102 2/12/2024