У меня есть вопрос. Я отредактировал свою сущность Room из этого:
@Entity(tableName = "users")
public class User {
public User(String username, String email, String password){
this.username = username;
this.email = email;
this.password = password;
}
public User() {}
@PrimaryKey
@ColumnInfo(name = "Username")
private String username;
@ColumnInfo(name = "Email")
private String email;
@ColumnInfo(name = "Password")
private String password;
//getters setters
К этой форме:
@Entity(tableName = "users")
public class User {
public User(String username, String email, String password){
this.username = username;
this.email = email;
this.password = password;
}
public User() {}
//changes here, move userId to int instead of username
@NonNull
@PrimaryKey(autoGenerate = true)
private int id;
@NonNull
@ColumnInfo(name = "Username")
private String username;
@ColumnInfo(name = "Email")
private String email;
@ColumnInfo(name = "Password")
private String password;
//getters setters.
А вот так выглядит мой RoomDatabase
класс:
@Database(entities = {User.class}, version = 1)
public abstract class ApplicationDatabase extends RoomDatabase {
public abstract UserDao userDao();
}
Мой вопрос: когда я редактирую сущность, меняется ли база данных на моем устройстве Android? Что если у меня есть данные в моей базе данных? Если мне нужно сначала удалить базу данных на моем устройстве? А как насчет моего конструктора для пользователя, теперь он будет работать?
Спасибо за любые советы