This topic created in 1853 days ago, the information mentioned may be changed or developed.
表里新加字段,实体代码改动后,如何让数据库保持一致。搜到资料是用命令在文件夹里生成迁移脚本,这样脚本岂不是越来越多。这个数据库只是在用户客户端用的,这办法太繁琐也容易出错。
在表结构只做增量更新的需求下,有解决办法吗,EnsureCreated 方法只能创建新的数据库和实体一致
如果是 nosql 数据库就不用关心这个问题了,不过调研之后没有发现稳定成熟的嵌入式数据库,仍然用的 sqlite
10 replies • 2021-05-17 22:24:31 +08:00
 |
|
1
Mithril May 16, 2021
所有数据库都是这么处理的吧?每次变更生成 Migration 。
|
 |
|
2
xuanbg May 16, 2021
好久没用 EF 了……我记得 EF 有三种设计模式:Code-First 、Model-First 、Database-First 。貌似只要不是 Database-First,就可以自动修改数据库表结构的。
|
 |
|
4
alinwu05 May 16, 2021
因为生成的脚本可以和代码一个签入,这样其他人拉取你的代码后,也可以用脚本同步数据库。
|
 |
|
5
forgottencoast May 16, 2021
生成新的脚本以后,启动客户端之前执行脚本即可。 所有的数据库程序都会有这个问题,要么 DBA 手工执行,要么就是部署程序执行。 新启动的客户端在创建数据库时,可以用合并过的脚本,这样只会有一个脚本创建数据库。
|
 |
|
6
netnr May 17, 2021 via Android
更新表后重新生成实体类,业务实体用 ViewModel
|
 |
|
7
flytsuki May 17, 2021
我以前用 Code-First 模式开发,只需写代码就行了。后面场景复杂了就躺平了,修改完数据库手动修改实体
|
 |
|
10
ggabc May 17, 2021
数据库这种需要稳定的底层结构,当然是每次添加了手动去执行脚本补充字段
|