我有一个表列码和名称,其中我建立使用此类。
@Entity
@Table(name = "xyz")
public class XYZ implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "some_gen")
@SequenceGenerator(name = "some_gen", sequenceName = "some_seq", allocationSize = 2)
@Column(name = "id")
private Long id;
@Column(name = "name")
private String name;
//Getter Setter NoArgConstructor AllArgsConstructor
}
现在,当我运行这一点,表以及序列被创建。 验证它从SQL开发。 但是,当我运行以下声明,我收到以下错误。
INSERT IGNORE INTO xyz (name) VALUES ('John');
ORA-01400:无法插入空入("SOME_USER"."XYZ"。"ID")
我访问用户使用。
//This is MyBatis. It will be triggered by REST API
@Mapper
public interface XYZMapper {
@Insert("INSERT IGNORE INTO xyz (name) VALUES (#{name})")
public void addNewName(XYZ xyz);
}