我想将数据库表中的字段更改为计算字段,而不是使用触发器填充。
我首先使用Entity Framework数据库,所以我将这个sql添加到迁移中以执行任务:
EXECUTE('ALTER TABLE [dbo].[BaseAnsweredQuestions] DROP COLUMN [CalculatedDueDate]
')
EXECUTE('ALTER TABLE dbo.BaseAnsweredQuestions ADD
CalculatedDueDate AS etc...')
这给了我一个问题,因为有几个索引依赖于这个字段。所以我在表更改之前为索引添加了drop sql,并在更改后重新创建了sql。
当我在“staging”数据库上运行迁移时出现错误:
数据库的事务日志已满
我的申请根本不会运行。我运行了一个数据库备份,这似乎可以解决问题,但是我想在生产中运行迁移。如何防止发生事务日志溢出?