dart 如何在Flutter中重置Hive数据库

7ivaypg9  于 2023-05-11  发布在  Flutter
关注(0)|答案(2)|浏览(154)

我正在使用Flutter的Hive数据库,当我试图保存一个对象时,文档清楚地说明了适配器:
如您所见,每个字段都有一个唯一的编号(每个类都是唯一的)。这些字段编号用于标识Hive二进制格式的字段,并且在使用类后不应更改。
因此,经过一些重构之后,我需要更改类和一些属性,包括他的编号。这样做后,显然数据库给我的错误(是完美的工作之前),并考虑到所有的数据从数据库是dum数据用于测试目的,我想Reser和重新启动一个新的数据库形式0。我确实尝试了一些东西,比如打开盒子后的box.clear()Hive.deleteFromDisk(),但我仍然得到一个关于Adapter属性类型与普通类中的另一个不匹配的错误(引用重构和更改索引之前的那个)。
如何成功删除所有信息并清理数据库以从零开始作为新安装??
多谢了!

cgvd09ve

cgvd09ve1#

好吧,我找到答案了:
在模拟器中作为新安装启动应用的方法是从模拟器中卸载应用并重新安装。
当然,如果在Adapter中对索引号进行新的更改,则需要重新创建以下步骤:

  • 删除创建的适配器
  • 运行flutter clean
  • 从模拟器中删除应用程序
  • 使用flutter packages pub run build_runner build创建新适配器
  • 再次运行应用程序
    希望对未来的人有用:)
ffscu2ro

ffscu2ro2#

我也遇到了同样的问题,我用以下方法解决了它:
1.首先,在项目的父目录中第一次启动应用程序时,删除由hive生成的.hive和.lock文件。
1.回来修改它是你想要在你的模型和启动以下命令:

flutter packages pub run build_runner build

相关问题