Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
Jpa 自动更新数据库中的记录_Jpa_Jpql - Fatal编程技术网

Jpa 自动更新数据库中的记录

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

在我(使用JSF/PrimeFaces)访问前端条目数据之前,我必须检查是否存在名称记录。查看范围bean,如下所示:

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的责任。所以我修复了标签:)