关于 ObjectBox 数据模型重命名的问题
questions on ObjectBox data model rename
假设我想将 属性“用户”重命名为“客户”。我知道我可以在新的 属性 名称中添加“用户”的@Uid。喜欢:
@Uid(123985252953064306)
String customer;
所以我假设在我的应用程序的下一次构建和 运行 期间,数据库中的“用户”已重命名为“客户”。我的第一个问题是:然后我可以从我的代码中删除 @Uid(123985252953064306) 以进行进一步构建吗?如果该应用程序仅由我自己使用,我想答案是肯定的?因此,为了保持应用程序最终用户的兼容性,我仍然需要在代码中保留 @Uid 注释。正确吗?
我的下一个问题是:如果稍后我想将“customer”重命名为“client”怎么办?我应该在新的 属性 处添加一个额外的 @Uid 吗?喜欢:
@Uid(123985252953064306)
@Uid(124568645726267383)
String client;
Data Model Updates and with some more background in Meta Model, IDs, and UIDs.
中的文档涵盖了您提出的问题
简而言之,一旦您将 @Uid
放在 属性(或实体)上,您就可以随时重命名它。 ObjectBox 使用 UID 来识别 属性 并且知道它以前在那里。因此,您需要将其保留在 属性.
所以从
@Uid(123985252953064306)
String customer;
你可以去
@Uid(123985252953064306)
String someFancyName;
然后回到
@Uid(123985252953064306)
String customer;
在数据库中为 属性 保留相同的数据。
假设我想将 属性“用户”重命名为“客户”。我知道我可以在新的 属性 名称中添加“用户”的@Uid。喜欢:
@Uid(123985252953064306)
String customer;
所以我假设在我的应用程序的下一次构建和 运行 期间,数据库中的“用户”已重命名为“客户”。我的第一个问题是:然后我可以从我的代码中删除 @Uid(123985252953064306) 以进行进一步构建吗?如果该应用程序仅由我自己使用,我想答案是肯定的?因此,为了保持应用程序最终用户的兼容性,我仍然需要在代码中保留 @Uid 注释。正确吗?
我的下一个问题是:如果稍后我想将“customer”重命名为“client”怎么办?我应该在新的 属性 处添加一个额外的 @Uid 吗?喜欢:
@Uid(123985252953064306)
@Uid(124568645726267383)
String client;
Data Model Updates and with some more background in Meta Model, IDs, and UIDs.
中的文档涵盖了您提出的问题简而言之,一旦您将 @Uid
放在 属性(或实体)上,您就可以随时重命名它。 ObjectBox 使用 UID 来识别 属性 并且知道它以前在那里。因此,您需要将其保留在 属性.
所以从
@Uid(123985252953064306)
String customer;
你可以去
@Uid(123985252953064306)
String someFancyName;
然后回到
@Uid(123985252953064306)
String customer;
在数据库中为 属性 保留相同的数据。