Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数据库不填充数据_Java_Postgresql_Jpa - Fatal编程技术网

Java 数据库不填充数据

Java 数据库不填充数据,java,postgresql,jpa,Java,Postgresql,Jpa,我在Postgres中创建了一个表,并在java代码中创建了一个关系: @Getter @Setter @Entity @Table(name = "resources") public class Resource { @Id @Column(name = "raport_id") private BigDecimal raportId; @Column(name = "reference_id") private String referenceId;

我在Postgres中创建了一个表,并在java代码中创建了一个关系:

@Getter
@Setter
@Entity
@Table(name = "resources")
public class Resource {
    @Id
    @Column(name = "raport_id")
    private BigDecimal raportId;
    @Column(name = "reference_id")
    private String referenceId;
}
我还创建了一个存储库

public class ResourcesRepository {
    @PersistenceContext
    private EntityManager entityManager;

    public void persist(BigDecimal raportId, String referenceId, String type) {
        Resource resource = new Resource();
        resource.setRaportSysId(raportId);
        resource.setReferenceId(referenceId);
        entityManager.persist(raport);
    }

    public void updateRaportId(BigDecimal raportId) {
        entityManager.createQuery("UPDATE Resource r set r.raportId = :raportId ")
                .setParameter("raportId", raportId)
                .executeUpdate();
    }
}
我在不同的位置传递参数raportId,调用如下查询:

ResourcesRepository.updateRaportId(raport.getId());

我没有任何错误,但该表未填充。不知道我做错了什么?我应该使用Insert INTO而不是update吗

确保在更新/持久化后提交事务

是否确实要无条件更新所有资源以将其
raportId
设置为该值?!是的,现在。稍后,当我填充新字段时,我将区分它们。作为fir,现在我只想为每个记录设置raportId当我调用persist方法时,我得到一个错误:意外异常类:TransactionRolledbackLocalException:消息:错误提交事务: