Ich baue ein Datenmodell in greenDAO. Es ist ein Port einer iOS App, die Core Data verwendet. In iOS verwenden wir Indizes (Indizes?), Um die Suchleistung in einer Tabelle mit 20 Spalten (Eigenschaften) zu erhöhen, in denen 5 Spalten häufig abgefragt werden. Ich weiß, dass dies zusätzlichen Speicher zur Folge hat und langsamer in die Tabelle schreibt.Korrekte Möglichkeit zum Hinzufügen von Indexspalten in greenDao?
Digging in der Dokumentation stieß ich auf die addIndex (Index-Index) -Methode in Entity und die index() -Methode in Property.PropertyBuilder. Welches ist der richtige Weg, um einen Index zu einer Entity hinzuzufügen?
Entity entity = schema.addEntity("entity");
entity.setSuperclass("SuperClass");
entity.addIdProperty();
entity.addIntProperty("property").index();
oder
Entity entity = schema.addEntity("entity");
entity.setSuperclass("SuperClass");
entity.addIdProperty();
Property property = entity.addIntProperty("property").getProperty();
entity.setIndex(property);
Oder tun sie beide das gleiche tun?
nicht hier sollte index.makeUnique() sein; ? – Flinbor
@Flinbor 'makeUnique()' ist optional. Verwenden Sie es, um zu verhindern, dass zwei Zeilen die gleichen Werte in beiden Spalten haben. –
vielleicht ist das veraltet, aber wenn ich es versuche, löst es einen Fehler aus, der sagt, dass "Index" abstrakt ist, also kann ich es nicht instantiieren ... –