答案 0 :(得分:7)
使用@UniqueConstraint
注释指定将唯一约束包含在主表或辅助表的生成DDL中。
或者,要确保字段值是唯一的,您可以编写
@Column(unique=true)
String myField;
答案 1 :(得分:1)
使用Spring Data JPA,您正在使用JPA,因此您使用JPA指定唯一约束。在这方面没有什么特别的Spring Boot或Spring Data。
答案 2 :(得分:0)
科特林的例子:
Entity
@Table(name = "TBL_XXX",
uniqueConstraints = [
UniqueConstraint(name = "sessionid_uindex", columnNames = ["sessionId"])
]
)
data class XxxReturn(
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "XXX_ID")
var id: Long? = null,
var sessionId: String,
var msg: String
)
答案 3 :(得分:0)
如果表中有一个具有UNIQUE KEY
约束的列,则只需在注释unique=true
中添加属性@Column
代码片段:
@Column(name = "unique_key_field", nullable = false, unique = true)
String uniqueKeyFied;
如果表中有多个唯一键约束,则只需跟随JPA annotations
,因为spring-boot-data-starter
没有为表约束提供任何特殊注释(KEY / UNIQUEKEY)
代码片段:
@Entity
@Table(name = "table_name", uniqueConstraints={
@UniqueConstraint( name = "idx_col1_col2", columnNames ={"col1","col2"})
})