主键列不能自动递增

时间:2019-05-07 08:42:49

标签: spring hibernate

如何正确进行自动递增?

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="userid", updatable=false, nullable=false)
private Integer userid;

当我在列上使用注释创建数据库时,休眠注释存在问题。问题是,当我插入一行时,数据库不会自动增加userid列。然后会引发错误。

2 个答案:

答案 0 :(得分:0)

      <View style={styles.container}>
        <Text style={styles.description}>Search for houses to buy!</Text>
        <View style={{flexDirection:"row"}}>
          <TextInput style = {styles.searchInput}placeholder='Search via name or postcode'/>
          <Button
            onPress={() => {}}
            color='#48BBEC'
            title='Done'/>
        </View>
      </View>

是的,我找到了答案。

答案 1 :(得分:0)

Hibernate支持不同的策略来生成pk值。 其中之一是使用自动递增的数据库列的身份策略。

如果需要遵循这种方式,则需要对pk属性@Id进行注释,并将@GeneratedValue注释和策略标记为GenerationType.IDENTITY。

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "userid", updatable = false, nullable = false)
private Integer userid;