如何在迁移中删除和重新创建所选表 code-first?
我想用一千个列丢弃表格并允许迁移来重新创建它。
我可以发布
但问题是我会制作手动创建这样的表
最简单的方法是使用 SSMS 并右键单击 Drop Create Table to new window 并从那里执行。
但是有没有一种简单的方法来使用代码迁移?
我可以发布
DropTable/"MyTableWithManyColumns"/;
但问题是我会制作手动创建这样的表
CreateTable/
"dbo.MyTable",
c => new
{
RowId = c.Int/nullable: false, identity: true/,
// many columns follow...
}/
.PrimaryKey/t => t.RowId/;
最简单的方法是使用 SSMS 并右键单击 Drop Create Table to new window 并从那里执行。
但是有没有一种简单的方法来使用代码迁移?
没有找到相关结果
已邀请:
4 个回复
董宝中
赞同来自:
从数据库中删除表
生成新的迁移 /通过
/. 将生成创建缺失表的新迁移。
移民 /使用
/
OR
从上下文中删除本质 /不要忘记删除与其他实体的所有连接/
通过迁移
/它会产生一种扔桌子的方法 /
执行迁移
基本上在上下文中添加
生成新的迁移
/它会产生一种方法 create table/
执行迁移
希望它会有所帮助!
诸葛浮云
赞同来自:
手动扔掉你想要重新创造的桌子
从表中删除记录 "__EFMigrationsHistory", 相关表格
跑 "update-database"
它应该再次启动不在历史记录中的所有迁移。 如果您有多个表格的迁移,请小心。 您可能需要省略一些迁移并手动添加更改。
移动 DbSets 从上下文也应该工作,可能更好,但对我来说 Entity-Framework-Core 它根本不起作用。
诸葛浮云
赞同来自:
如何手动删除表
运行命令 update-database 来自包调度员控制台
一切都会像它一样工作
快乐编码
二哥
赞同来自:
但这是我的成功:
在 SQL Management Studio 我生成了整个数据库的场景 /或者你知道的表是相关的/. 我发现了任何外部关键限制 /FK/, 索引等。与之相关 MyTable. 还 sql 生成运营商 Insert 为了 MyTable. 删除限制,删除表,创建一个表 /显然,使用相应的字段顺序/, 插入数据,重新创建限制 FK.
只是为了检查数据库,我试图对数据库进行更改。
一切都在工作。