问题标签 [fluent-migrator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - FluentMigrator 的唯一约束
如何在使用 FluentMigrator 创建表时添加“lower(title)”,我想在 postgre 中使用不区分大小写的唯一约束
powershell - 使用 Powershell for Fluent Migrator 解析 Azure 云服务 cscfg 文件
我们的云服务有许多云部署项目。例如
等等。每个 cscfg 文件都有该特定环境的数据库连接字符串。
在部署云项目期间,我们运行一个 powershell 脚本,该脚本启动 azure cmdlet 以部署和启动该云服务。
我现在想添加一个步骤,以针对该环境数据库运行 FluentMigrator。我以前使用过 FM,并将其指向转换后的 Web.Config 以获取 SQL 连接字符串,但似乎无法使其正常工作。
有人可以用 powershell 脚本为我指明正确的方向,打开 CSCFG 文件,手动将 ConnectionString 解析为 ps $var,然后将其直接传递给 fluent 迁移器。
sql-server-2012 - FluentMigrator sql 输出 - 无事务
当使用带有 -o 开关的 fluentmigrator(将 sql 输出到文件)时,我注意到没有批处理/事务,我可以在脚本中看到对事务的引用,但它们只是注释。
是否有开关或方法可以在 sql 输出中包含事务控制?
database-migration - 不擦除旧数据的新迁移
我们正在使用FluentMigrator
在一个项目中使用。假设我在下面得到了这样的代码。
所以每次我们运行新的迁移时,所有以前的数据都会被删除。有没有办法避免它并将数据保存在不变的地方?
c# - 如何使用 FluentMigrator 插入二进制数据
我正在使用 FluentMigrator 来管理数据库。其中一列是类型VARBINARY(MAX)
,作为迁移的一部分,我需要将数据插入该列。
我尝试了以下方法:
然而,这似乎不正确(由于它抛出的异常)。
有人能指出我正确的方向吗?(数据库是 SQL 2012,以防它有所作为)。
c# - 如何在 FluentMigrator 迁移中检索插入的身份
在迁移期间,我如何插入到我的表中,然后检索 ID,然后使用它在另一个表中插入相关数据。
我现在拥有的是要插入的硬编码 ID,但我不知道当我运行迁移时它会是什么。
我希望能够检索插入的 ID 并将其用于第二次插入,而不是对其进行编码。
如果有任何帮助,我正在使用 SQL Server...
我认为这将是微不足道的,但似乎不是,在谷歌搜索之后,在这里没有看到任何答案。
c# - 使用 FluentMigrator 根据 where 子句删除多行
给定一个 Payment 表、一个 PaymentStatus 表和一个 PaymentHistory 表,我需要从 PaymentStatus 表中删除 Payment 和 PaymentHistory 表具有关联记录的状态。所以自然这意味着删除支付表之前的历史表。当然,历史数据有多个不同状态的支付记录。我需要的是历史表删除的 where 子句...... sql 看起来像这样:
我不明白的是如何在 FluentMigrator 中实现这一点。这是我到目前为止所拥有的,但是在 .FromTable() 之后没有 .Where() 或其他可用的扩展方法
在此先感谢您的帮助。
c# - 使用 Create.Table、FluentMigrator 时向 Table 列添加约束
我正在使用 FluentMigrator 在数据库中创建一个新表。创建后,我意识到我需要在 T-Sql 中添加如下约束:
假设我已经有一个表 tableA
如何在 .Net 中使用 FluentMigrator 创建约束?我用谷歌搜索并没有找到任何答案。谢谢!
c# - 在同一数据库上使用多个 FluentMigrator 程序集
假设我在同一个数据库中有两个独立的表,表 Book 和 Cup。我只用主键(int)创建两者,称为 Id。然后,为了保持整洁,我将它们分成不同的项目并为它们创建 FluentMigrations,它们将驻留在Book.Migrations.dll
和Cup.Migrations.dll
.
现在我意识到也许我的书应该能够有一个名字,并创建一个新的迁移来添加一个名为 name 的列。我将它的版本设置为 201408111220(所以写这篇文章的时间戳),并将其命名为 AddNameToBook。我应用此迁移并相应地更新数据库。
然后我意识到也许杯子应该有颜色。因此,我在另一个项目中创建了一个新的迁移,版本为 201408111221,并将其命名为 AddColorToCup。我再次运行迁移,并更新了数据库。
据我所知,到目前为止一切都应该正常。我不确定的是,如果我现在向 Book 添加另一个迁移,比如 201408111224,应用它,然后尝试回滚。由于现在201408111221
来自其他程序集的版本存在于 VersionInfo -表中,FluentMigrator 将如何处理这个问题?它会在我脸上抛出一个错误,还是因为当前程序集对此一无所知而忽略该行?
此外,欢迎以这种方式(对一个数据库使用多个程序集)使用 FluentMigrator 提出其他意见。