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中的Select仅适用于ID参数_Select_Jpa - Fatal编程技术网

JPA中的Select仅适用于ID参数

JPA中的Select仅适用于ID参数,select,jpa,Select,Jpa,我正在尝试做一个选择查询,以找到哪些车型是一级 我尝试过这段代码,它可以工作,但有必要将ID设置为1。如果我只做marca1.setNombre_marca(“宝马”);不带put marca1.setId(1);它不起作用 marca marca1 = new marca(); marca1.setNombre_marca("BMW"); //only works if I set the ID to 1 marc

我正在尝试做一个选择查询,以找到哪些车型是一级

我尝试过这段代码,它可以工作,但有必要将ID设置为1。如果我只做marca1.setNombre_marca(“宝马”);不带put marca1.setId(1);它不起作用

          marca marca1 = new marca();
          marca1.setNombre_marca("BMW");
          //only works if I set the ID to 1
          marca1.setId(1);

          Query query = em.createQuery("SELECT DISTINCT c.model FROM car c WHERE c.marcacoche = :param ");
          query.setParameter("param",marca1);
          List<String> resultados = query.getResultList();
marca-marca1=新的marca();
3月1日。塞特诺姆布雷•马卡(“宝马”);
//仅当我将ID设置为1时有效
marca1.setId(1);
Query Query=em.createQuery(“从car c中选择不同的c.model,其中c.marcacoche=:param”);
query.setParameter(“param”,marca1);
List resultados=query.getResultList();
任何形式的不带身份证就能在JPA中获得所有宝马车


提前谢谢!!!;)

在执行查询之前,只需在db中搜索带有
Nombre_marca='BMW'
字段的实体
marca
。在这里创建一个新的
marca
对象是个坏主意,它必须来自数据库。

首先搜索实体marca BMW,然后执行第二个查询?然后我必须执行2个选择查询?一个用于创建marca实体,另一个用于搜索带有该marca的汽车?是的。如果您想按品牌名称进行搜索,您需要执行类似“选择不同的c.model FROM car c,其中c.marcacoche.nombreMarca=:param”这样的操作,并将参数绑定到“BMW”。然后JPA会为你加入。