Greendao 3,使用户 table 没有重复的用户名
Greendao 3, make users table with no duplicate user names
我在搜索了数小时的解决方案后问了这个问题,但没有找到。
我建立了一个包含三列的数据库:用户名、密码和年龄。
我能够插入新用户并更新它们,但我希望插入两个相同的用户名是不可能的。我知道如何在 sqlite 中执行此操作,但在 greendao 中它不适合我。谢谢。
这是我的用户类:
@Entity(nameInDb = "users")
public class Users{
@Id(autoincrement = true)
private Long id;
@NotNull
private String userName;
@NotNull
private String password;
@NotNull
private int age;
}
@Unique
注释应该适合您。
@Entity(nameInDb = "users")
public class Users{
@Id(autoincrement = true)
private Long id;
@Unique
private String userName;
@NotNull
private String password;
@NotNull
private int age;
}
如果您需要进一步自定义,您可以向@Entity 注释添加选项
@Entity(
...
// Define indexes spanning multiple columns here.
indexes = {
@Index(value = "name DESC", unique = true)
},
...
)
我在搜索了数小时的解决方案后问了这个问题,但没有找到。 我建立了一个包含三列的数据库:用户名、密码和年龄。 我能够插入新用户并更新它们,但我希望插入两个相同的用户名是不可能的。我知道如何在 sqlite 中执行此操作,但在 greendao 中它不适合我。谢谢。
这是我的用户类:
@Entity(nameInDb = "users")
public class Users{
@Id(autoincrement = true)
private Long id;
@NotNull
private String userName;
@NotNull
private String password;
@NotNull
private int age;
}
@Unique
注释应该适合您。
@Entity(nameInDb = "users")
public class Users{
@Id(autoincrement = true)
private Long id;
@Unique
private String userName;
@NotNull
private String password;
@NotNull
private int age;
}
如果您需要进一步自定义,您可以向@Entity 注释添加选项
@Entity(
...
// Define indexes spanning multiple columns here.
indexes = {
@Index(value = "name DESC", unique = true)
},
...
)