grate.sqlite 1.8.0
dotnet add package grate.sqlite --version 1.8.0
NuGet\Install-Package grate.sqlite -Version 1.8.0
此命令旨在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块版本的 Install-Package。
<PackageReference Include="grate.sqlite" Version="1.8.0" />
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件中以引用此包。
paket add grate.sqlite --version 1.8.0
NuGet 团队不提供对此次序的支持。请联系它的 维护者 以获取支持。
#r "nuget: grate.sqlite, 1.8.0"
#r 指令可以用在 F# Interactive 和 Polyglot Notebooks 中。将此内容复制到交互式工具或脚本的源代码中,以引用此包。
// Install grate.sqlite as a Cake Addin #addin nuget:?package=grate.sqlite&version=1.8.0 // Install grate.sqlite as a Cake Tool #tool nuget:?package=grate.sqlite&version=1.8.0
NuGet 团队不提供对此次序的支持。请联系它的 维护者 以获取支持。
grate
grate 是一个 SQL 脚本迁移执行器,使用纯 SQL 进行迁移。没有元语言,没有代码,没有配置,没有 EF 迁移。它为您提供了完整的灵活性,对迁移的全面控制,并允许您使用特定数据库系统的高级功能。您不会被限制在所有支持数据库的共同最低功能集。
grate.sqlite
这是 grate 的 SQLite 提供程序。它用于将 SQL 脚本以编程方式部署到 SQLite 数据库。有关命令行使用方式,请参阅 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("sqlite connection string here")
})
.UseSqlite(); // 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请求。
完整的文档可以在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)
- Microsoft.Data.Sqlite (>= 8.0.6)
-
net7.0
- grate.core (>= 1.8.0)
- Microsoft.Data.Sqlite (>= 8.0.6)
-
net8.0
- grate.core (>= 1.8.0)
- Microsoft.Data.Sqlite (>= 8.0.6)
NuGet包
此包没有被任何NuGet包使用。
GitHub仓库
此包没有被任何流行的GitHub仓库使用。