如何在现有数据库中反映文档结构的更改

本文关键字:文档 结构 数据库 | 更新日期: 2023-09-27 17:56:41

我有一个关于RavenDb的问题:

假设我已经存储了 Foo 类型的对象的集合,现在对类Foo进行更改,比方说,删除一个属性。此更改如何反映在现有数据库中?还是我需要读取旧Foos的所有存储实例,手动将它们映射到新Foo,然后再次上传到数据库?

有什么建议可以最好地处理这种情况吗?我对 RavenDB 感兴趣,但主要担心想要扩展特定类然后希望将此更改反映在数据库中的文档中的困难。

谢谢

如何在现有数据库中反映文档结构的更改

对于大多数更改,您不需要执行任何操作,只需让 RavenDB 在下次加载对象时为您修复即可。例如,当您添加新属性或删除属性时。对于更复杂的内容,您可以运行一个脚本(http://ayende.com/blog/157185/awesome-ravendb-feature-of-the-day-evil-patching),将现有文档从一个版本转换为另一个版本)。