Подтвердить что ты не робот

Как применять уникальные ограничения с помощью аннотации

@Column(name = "userId")
    @UniqueConstraint
    private Integer userId;

Я использую эти аннотации для ввода данных в таблицу базы данных. Я хочу сделать поле userId уникальным. но когда я делаю это, он показывает мне ошибку @UniqueConstraints is disallowed for this location.

4b9b3361

Ответ 1

@Column(name = "userId",unique=true)

или если его созданный БД ID, вы также можете сделать это

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private Integer id;

Ответ 2

Вот пример использования @UniqueConstraint:

@Entity
@Table(name = "contact", 
  uniqueConstraints = @UniqueConstraint(columnNames = {"name", "company_id"}))
public class Contact {
  ...
}

Указывает, что комбинация столбца "name" и столбца "company_id" будет уникальной.

Ответ 3

И это объяснение Hibernate doc версии 3.5 для определения @UniqueConstraint.

 @Entity
    @Table(name="tbl_sky",uniqueConstraints = {@UniqueConstraint(columnNames={"month", "day"})})
    public class Sky implements Serializable {
       ...
    }

и это для Пример Hibernate 4.3 для @UniqueConstraint