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
NuGet 团队不提供对此客户端的支持。请联系其 管理员 以获取支持。
#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
NuGet 团队不提供对此客户端的支持。请联系其 管理员 以获取支持。
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) | |
PostgreSQL (postgresql) | |
MariaDB/MySQL (mariadb) | |
Sqlite (sqlite) | |
Oracle (oracle) |
grate.core
这是一个核心代码包,它本身不执行任何操作。它主要适用于编写 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 已计算。 |
-
net6.0
- grate.core (>= 1.8.0)
- MySqlConnector (>= 2.3.7)
-
net7.0
- grate.core (>= 1.8.0)
- MySqlConnector (>= 2.3.7)
-
net8.0
- grate.core (>= 1.8.0)
- MySqlConnector (>= 2.3.7)
NuGet 包
此包不被任何 NuGet 包使用。
GitHub 仓库
此包不被任何流行的 GitHub 仓库使用。