Я новичок в разработке приложений для Android и создаю приложение, в котором есть Trips, в котором хранятся локации.
Я получаю ошибку компиляции: «Столбец trip_Id ссылается на внешний ключ, но он не является частью индекса. Это может вызвать полное сканирование таблицы при изменении родительской таблицы, поэтому настоятельно рекомендуется создать индекскоторый охватывает этот столбец. "
У меня есть 2 таблицы: Trip & Location.
Я попытался проиндексировать tripId и locationId в их соответствующих классах, но это не решает проблему.
У поездки есть свой идентификатор (PK), название, описание и приоритет.
Местоположение имеет свои locationId (PK), tripId (FK), locationName и LatLng места.
@Entity(tableName = "location_table",
foreignKeys = @ForeignKey(entity = Trip.class, parentColumns = "location_Id", childColumns = "trip_Id"),
indices = {@Index(value = {"locationId"}, unique = true)})
public class Location {
@PrimaryKey(autoGenerate = true)
private int locationId;
@ColumnInfo (name = "trip_Id")
private int tripId;
private String locationName;
@TypeConverters(LatLngConverter.class)
private LatLng latLng;
@Entity(tableName = "trip_table", indices = {@Index(value = {"id"}, unique = true)})
public class Trip {
@PrimaryKey(autoGenerate = true) // with each new row SQLite will automatically increment this ID so it will be unique
@ColumnInfo (name = "location_Id")
private int id;
private String title;
private String description;
private int priority;
Кажется, я не могу понять, что не так