Jpa 自动更新数据库中的记录
在我(使用JSF/PrimeFaces)访问前端条目数据之前,我必须检查是否存在名称记录。查看范围bean,如下所示:Jpa 自动更新数据库中的记录,jpa,jpql,Jpa,Jpql,在我(使用JSF/PrimeFaces)访问前端条目数据之前,我必须检查是否存在名称记录。查看范围bean,如下所示: public void updateProfileListener(ActionEvent actionEvent) { if(supplierService.isExistSupplierName(supplier.getName(), true)) return; // else saveDate(); userDatabase.createQuery("sel
public void updateProfileListener(ActionEvent actionEvent) {
if(supplierService.isExistSupplierName(supplier.getName(), true)) return;
// else saveDate();
userDatabase.createQuery("select c from Supplier c where c.name = :name")
.setParameter("name", name)
.getResultList();
}
数据库检查代码如下:
public void updateProfileListener(ActionEvent actionEvent) {
if(supplierService.isExistSupplierName(supplier.getName(), true)) return;
// else saveDate();
userDatabase.createQuery("select c from Supplier c where c.name = :name")
.setParameter("name", name)
.getResultList();
这只是检查现有名称的常规查询sql,但它仍然要从前面的条目更新新数据,我可以知道发生了什么吗?BalusC的rigth
现在,如果您想找到olny 1供应商,您可以尝试在where子句中添加其他数据验证(我不知道您的业务逻辑:D)。
但是,你真的想要结果列表我认为最好用“喜欢”
从供应商c中选择c,其中c.name与相似默认情况下,
其中
区分大小写。因此,“foo”的名称与“foo”的名称不同。你考虑到这一点了吗?顺便说一下,对于action方法,我只是在列上放置了一个UNIQUE
约束,并捕获约束冲突。顺便说一下,这根本不是JSF的问题。它已经成功地将提交的数据交付给您。超出这一步的任何事情都不是JSF的责任。所以我修复了标签:)